提问人:Naveed 提问时间:11/15/2023 更新时间:11/15/2023 访问量:20
为什么在启动操作调用时有一个额外的 onPause onResume?
Why is there an extra onPause onResume when launching action call?
问:
我有一个简单的设置,可以启动拨号器以使用ACTION_CALL
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_launch_dialer)
Log.d("TAG", "onCreate")
findViewById<Button>(R.id.btn_launch).setOnClickListener {
Log.d("TAG", "Launching Call")
val uri = Uri.parse("tel:3332223333")
val intent = Intent(Intent.ACTION_CALL, uri)
startActivity(intent)
}
}
override fun onResume() {
super.onResume()
Log.d("TAG", "onResume")
}
override fun onPause() {
super.onPause()
Log.d("TAG", "onPause")
}
我正在记录每个生命周期并看到奇怪的行为。一旦用户单击启动按钮,似乎就会有额外的内容。onPause
onResume
单击上面的启动按钮时,我得到以下日志输出。
Launching Call
onPause
onResume <-- This is unexpected
onPause
onStop
我无法弄清楚为什么生命周期会转换回初始 .有什么方法可以防止这种情况发生吗?onResume
onPause
其他上下文:
我正在尝试做一些工作,但由于意外的调用,它被重复了onPause
onResume
答:
0赞
Md Eusuf Uddin
12/11/2023
#1
当您回到 App 中时,您无法避免调用 onResume()。因为 Activity lifecycle 使用此行为。我想,这个链接会对你有所帮助
评论