Android中的onRequestPermissionsResult()后调用onResume()吗?

mik*_*_x_ 2 java android android-permissions

我有一个活动,我已经把checkSelfPermissionrequestPermissions的方法onCreate方法.

我也有onRequestPermissionsResultonCreate以外的方法.

最后我也有一个onResume方法.

首先叫哪一个,onResume或者onRequestPermissionsResult

Sim*_*one 13

正确的事件链如下:

  1. 你打电话requestPermissions给Activity的onCreate

  2. requestPermissions开始在另一个线程中运行,因为它被设计为不阻止UI线程.所以你的活动经历onStart然后onResume

  3. 权限请求会生成一个对话框,该对话框会在Activity上触发 onPause,因为它不再处于前台位置.

  4. 此时的活动暂停,您可以看到一个对话框,要求允许或拒绝该权限.

  5. 您做出选择,对话框得到解决,并在Activity上调用onResume.

还要注意的是,在onPause通过对话总是解雇后在onStart的onResume活动的,不管需要多长时间他们执行代码.

现在您还可以了解为什么不应将requestPermissions放在onResume中.