我正在尝试遵守Google的要求,以请求针对Android 10的ACTIVITY_RECOGNITION权限,但我似乎不明白为什么没有显示权限弹出窗口,以及其他权限(例如,位置,存储, ...)
我的代码是:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACTIVITY_RECOGNITION) != PackageManager.PERMISSION_GRANTED) {
Log.d("TAG", "PERMISSION 'ACTIVITY_RECOGNITION' NOT GRANTED");
ActivityCompat.requestPermissions(this,
new String[]{Manifest.permission.ACTIVITY_RECOGNITION},
MY_PERMISSIONS_ACTIVITY_RECOGNITION);
} else
{
Log.d("TAG", "PERMISSION 'ACTIVITY_RECOGNITION' GRANTED");
}
而且我总是以“ NOT GRANTED”结束,但是ActivityCompat.requestPermissions没有显示弹出窗口! 还有什么我想念的吗?
清单包含 和app.gradle minSdkVersion 29 targetSdkVersion 30
没有想法,任何帮助都将受到欢迎。 只需添加一下,我就可以在Pixel 2上运行此程序,并提供最新的固件10.0.0(QP1A.191105.004,2019年11月)
答案 0 :(得分:0)
检查:Privacy changes in Android 10
从API 29开始(Android Q,Android 10) Android App需要AndroidManifest.xml中的权限
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION"/>
在API 29之前的AndroidManifest.xml
<uses-permission android:name="com.google.android.gms.permission.ACTIVITY_RECOGNITION" />
和
如果system-auto授予android.permission.ACTIVITY_RECOGNITION权限,则在将您的应用更新为Android 10之后,您的应用将保留该权限。但是,用户可以随时在系统设置中撤消该权限。
谢谢。