在 Android 10 中以编程方式授予权限不再有效

问题描述

我曾经通过使用在 Android Oreo 上以编程方式授予权限

adb shell pm grant [PACKAGE_NAME] [PERMISSION]

或者通过在有根设备上执行命令行

su -c pm grant [PACKAGE_NAME] [PERMISSION]

示例:

adb shell pm grant android.example.myapp android.permission.CAMERA

它曾经工作得很好,然后应用程序的权限设置面板显示授予的权限,我可以使用以下方法检查它:

getPackageManager().getPackageInfo(context.getPackageName(),PackageManager.GET_PERMISSIONS);

在 android 10 上应用相同的程序时出现问题:使用 getPackageManager().getPackageInfo(context.getPackageName(),PackageManager.GET_PERMISSIONS) 检查时,权限显示为已授予,但它们在应用程序权限设置面板中仍然未授权,当当应用尝试使用它不起作用的权限时尝试。

知道发生了什么以及应该如何在 Android 10 中以编程方式授予权限吗?

TIA

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)