我有一个基于片段的应用程序(使用“targetSdkVersion 23”),它在一些需要危险权限的片段生命周期方法中执行代码。OS 6 权限框架涉及在应用程序可以继续执行实际需要权限的代码之前通过回调接受权限。似乎 OS 6 权限模型不提供同步模式,并且在依赖于危险权限的生命周期方法中当前正在执行(棉花糖之前)的一堆代码。这个新的回调要求将破坏我现有的代码,因为由于回调的异步性质,主线程将被迫继续执行下一个生命周期方法而没有完成执行前一个生命周期方法中的逻辑(!);
如果我在主线程中应用阻塞技术(BlockingQueue、CountDownLatch 等),似乎也会阻止回调发生。
任何人都可以提出一种技术或编码模型,允许我在不破坏当前应用程序且无需对片段应用程序进行大规模重新架构的情况下请求并获得运行时权限吗?
PS。这是一个基于 Java8 的应用程序。