permission :声明一个安全权限,可用于限制对该应用程序或其他应用程序的特定组件或功能的访问。
<permission android:description="string resource" android:icon="drawable resource" android:label="string resource" android:name="string" android:permissionGroup="string" android:protectionLevel=["normal" | "dangerous" | "signature" | "signatureOrSystem"] />
android:name 权限名称。这是用于在代码中引用权限的名称,例如,在<使用权限>元素和应用程序组件的权限属性。
android:description 用户可读的权限描述,比标签更长,信息更丰富。它可以显示解释用户的权限-例如,当用户被问及是否授予权限到另一个应用程序时。
此属性必须设置为对字符串资源的引用;与标签属性不同,它不能是原始字符串。
android:icon 引用一个图标表示允许图像资源。
android:label:权限的名称,一个可以显示给用户的权限。
作为一个方便,标签可以直接设置为一个原始字符串,而您正在开发应用程序。但是,当应用程序已准备好发布时,应将其设置为对字符串资源的引用,以便它可以像用户界面中的其他字符串一样本地化。
android:protectionLevel:描述权限中隐含的潜在风险,并指示在确定是否授予请求应用程序的权限时系统应遵循的过程。该值可设置为下列字符串之一:
android:permissionFlags:表示此权限是否涉及到消费
android:permissionGroup:将此权限分配给组。此属性的值是该组的名称,必须在该应用程序或其他应用程序中与<权限组>元素声明。如果未设置此属性,则权限不属于组。
uses-permission 客户授予应用权限
permission-group
声明有关权限的逻辑分组的名称,通过<权限>元素的permissiongroup属性。组的成员在用户界面中一起呈现。
注意,此元素不声明权限本身,只能在其中放置权限。有关元素的声明权限,并将它们分配给组,请参见元素的<权限>元素。
permission-tree
声明权限树的基本名称。应用程序拥有树内所有名称的所有权。它可以动态地调用PackageManager的树添加新的权限。addpermission()。树内的名称按句点分隔(“.”)。例如,如果基地的名字是com.example.project.taxes,权限如以下可能会增加:
com.example.project.taxes.CALCULATE
com.example.project.taxes.deductions.MAKE_SOME_UP
com.example.project.taxes.deductions.EXAGGERATE
注意,此元素不声明权限本身,只能在其中设置进一步权限的命名空间。有关权限的信息,请参见<权限>元素。
uses-permission-sdk-23
<uses-permission-sdk-23 android:name="string" android:maxSdkVersion="integer" />
<manifest>
当您更新应用以包含需要其他权限的新功能时,此元素很有用。如果用户在运行 API 级别 22 或更低版本的设备更新应用,系统在安装时会提示用户授予在该更新中声明的所有新权限。如果某个新功能无关紧要,您可能想同时在这些设备上停用该功能,以便用户不需要授予额外权限即可更新应用。如果使用 <uses-permission-sdk-23>
元素而不使用 <uses-permission>
,则仅当应用在支持运行时权限模式(用户在应用运行时向其授予权限)的平台上运行时才可请求权限。
如需了解有关权限的详细信息,请参阅简介的权限部分和单独的系统权限 API 指南。在 android.Manifest.permission
上可以找到基础平台定义的权限列表。
-
权限的名称。此权限可以是应用通过
<permission>
元素定义的权限、另一个应用定义的权限,或者一个标准系统权限(例如"android.permission.CAMERA"
或"android.permission.READ_CONTACTS"
)。 - 此权限应授予应用的最高 API 级别。如果应用安装在 API 级别较高的设备上,则应用不会被授予权限,无法使用任何相关功能。
android:name
android:maxSdkVersion