Android OS 6运行时权限模型要求在活动中实现回调方法"onRequestPermissionsResult(....)"。
1)操作系统总是在UI线程上启动这个回调吗?
2)是否有可能以编程方式选择回调将发生的线程(例如一些动态生成的后台线程)?
有人能解释一下吗?非常感谢。
操作系统总是在UI线程上启动这个回调吗?
是的。
是否有可能以编程方式选择回调发生的线程(例如一些动态生成的后台线程)?'
不,尽管您可以在onRequestPermissionResult()
中做一些事情来影响后台线程(例如,事件总线事件,在执行器的工作队列上发布作业)。
这必须在UI线程上完成,这当然是其中之一。后台线程可以是多个,它们用于不阻塞UI的任务。运行时权限的目的正是如此。阻塞UI并等待用户的操作