您的位置:首页 > 移动开发 > Android开发

Android开发-API指南-<permission>

2014-12-22 16:59 246 查看

<permission>

英文原文:http://developer.android.com/guide/topics/manifest/permission-element.html

采集(更新)日期:2014-5-16

搬迁自原博客:http://blog.sina.com.cn/s/blog_48d491300100zmuy.html

语法:

<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"] />


包含于:
<manifest>
说明:声明一个安全权限,用于限制对某些组件或功能的访问,可以是本应用程序的,也可以是其他应用程序的。 关于权限如何生效的更多信息,请参阅 manifest 介绍文档中的 Permissions 部分和 安全及权限 文档。属性:
android:description
可供用户阅读的权限说明,它比标题更长些,信息也更多。 它可以向用户显示对权限的解释 — 比如在向用户询问是否可以授权给其他应用程序的时候。
本属性必须设为一个指向字符串资源的引用;与
label
属性不同,不能直接赋值为字符串。

android:icon
对绘图(drawable)资源的引用,用作本权限的图标。
android:label
权限的名称,可用于向用户显示。
在开发应用程序时,出于方便起见,本标题可以直接赋值为字符串。 但当应用程序准备发布时,本属性应该设为对字符串资源的引用,以便于像其它用户界面的字符串一样进行本地化。

android:name
权限的名称。代码引用本权限时就要使用本名称 — 比如
<uses-permission>
元素中和应用程序组件的
permission
属性。
本名称必须唯一,因此应该使用 Java 风格的命名限定方式 — 比如 "
com.example.project.PERMITTED_ACTION
"。

android:permissionGroup
将本权限归为某个权限组。属性值是组的名称,必须由本应用程序或其他应用程序的
<permission-group>
元素声明的。如果未设置本属性,则本权限不属于任何一个组。
android:protectionLevel
描述了本权限隐含的潜在风险,并说明在确认是否赋予所需权限时系统将会进行的操作:
含义
"
normal
"
默认值。低风险权限,授权访问那些应用程序级的特性,对于其他应用程序、系统或者用户而言风险最小。 系统会在安装应用程序时,对此类请求自动授权,不会要求用户给出明确的同意(当然用户在安装以前肯定是有机会查看这些权限的)。
"
dangerous
"
高风险权限,授权访问用户隐私数据,或者对设备的操作可能会对用户造成负面影响。 因为这类权限会引入潜在的风险,系统可能不会向应用程序自动授权。 比如,所有危险的权限都可能会显示出来并在生效之前要求用户确认,或者采取其他方式以避免用户自动许可这类操作。
"
signature
"
仅当应用程序的数字签名与声明此权限的应用程序相同时,系统才会授权。 如果签名一致,系统将自动授权,不会再通知用户或要求用户明确同意。
"
signatureOrSystem
"
仅当多个应用程序位于同一个 Android 系统镜像内,或者这些应用程序的数字签名与声明此权限的应用程序相同,系统才会授权。 请尽量避免使用本类权限,因为
signature
级别的保护应该可以满足大部分需求,不管应用程序是安装在什么位置。 “
signatureOrSystem
”权限用于某些特殊场合,如有多家厂商的应用程序需要一起编译进一个系统镜像,并且要共用某些特性。
引入自:API 级别 1参阅:
<uses-permission>


<permission-tree>


<permission-group>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: