我正在集成一个从应用程序类启动的第三方 sdk。但是在 Android Marshmallow API 23 上测试时,我收到权限错误,因为 SDK 需要“ACCESS_COARSE_LOCATION”权限。
当我调用时,我需要在应用程序级别而不是 Activity 级别集成 SDK
ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.ACCESS_FINE_LOCATION},1 );
IDE 给出错误,因为“this”不是 Activity。
是否可以从 Application 类请求 Android 权限。
最佳答案
不,PackageManager.buildRequestPermissionsIntent(...)
目前仅通过 Acitivty.requestPermissions(...)
公开,因此您甚至无法启动系统窗口以从 Activity 之外的任何地方请求权限。
库将不得不改变(或者你将不得不捕获 SecurityException
:( )。
关于来自 Application 类的 Android Marshmallow 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34889431/