确定Android权限级别

确定Android权限级别,android,permissions,android-permissions,Android,Permissions,Android Permissions,我有一些Android权限,我想知道它们属于哪个权限保护级别。有人知道怎么检查吗?例如,我需要知道android.permission.RECEIVE\u BOOT\u COMPLETED权限的保护级别,但我想检查更多 编辑: 我发现我没有说清楚:我的意思不是引入许可的API级别,而是许可保护级别,四个级别之一:正常、危险、签名、签名或系统。例如,它确定在应用程序安装期间如何向用户显示此权限。如何检查特定权限属于哪个保护级别?对于Android权限 为了强制执行权限,系统的各个部分调用 权限验

我有一些Android权限,我想知道它们属于哪个权限保护级别。有人知道怎么检查吗?例如,我需要知道android.permission.RECEIVE\u BOOT\u COMPLETED权限的保护级别,但我想检查更多

编辑:


我发现我没有说清楚:我的意思不是引入许可的API级别,而是许可保护级别,四个级别之一:正常、危险、签名、签名或系统。例如,它确定在应用程序安装期间如何向用户显示此权限。如何检查特定权限属于哪个保护级别?

对于
Android权限

  • 为了强制执行权限,系统的各个部分调用 权限验证机制,用于检查给定应用程序 有特定的许可。权限验证机制是 作为受信任系统进程的一部分实现,并调用 权限验证机制分布在整个API中。 没有集中的策略来检查API运行时的权限 被称为。相反,调解取决于正确的位置 权限验证调用的数量

  • 权限检查放在系统的API实现中 流程。必要时,API实现调用 权限验证机制,用于检查调用 应用程序具有必要的权限。在某些情况下,API 库也可以冗余地检查这些权限,但是 不可依赖:应用程序可以通过直接 通过RPC存根与系统进程通信。许可 因此,不应在API库中进行检查。取而代之的是 系统进程中的API实现应调用权限 验证机制

另外,只需阅读本文档即可了解更多信息,您可以查看android的所有权限。 您在此处标记的级别:

getPackageManager().getPermissionInfo(name,  0).protectionLevel

可以在最新的源代码中找到具有相关保护级别的默认权限列表:

例如:

<permission android:name="android.permission.INTERNET"
    android:permissionGroup="android.permission-group.NETWORK"
    android:protectionLevel="dangerous"
    android:description="@string/permdesc_createNetworkSockets"
    android:label="@string/permlab_createNetworkSockets" />


请记住,OEM可能会更改它们。

您可以在


谢谢,但我不是这个意思。我纠正了上面的问题,所以如果您对此有一些想法,我将非常感谢您的帮助:)图像无法访问谢谢。我已经知道关于权限的事情了。我更正了上面的问题,以便更清楚地表明我的意图。请检查您是否知道答案。@user370305太难理解了。你能简化它吗?