http://blog.csdn.net/think_soft/article/details/7574726

语法(SYNTAX):

<permissionandroid:description="string resource"
            android:icon="drawable
resource
"
            android:label="string
resource
"
            android:name="string"
            android:permissionGroup="string"
            android:protectionLevel=["normal"
| "dangerous" |

                                     "signature" |
"signatureOrSystem"]
/>

被包含于(CONTAINED  IN):

<manifest>

说明(DESCRIPTION):

这个元素用于声明一个安全权限,以便限制对具体的组件、或组件功能、或其他的应用的访问。

属性(ATTRIBUTES):

android:description

这个属性用于给权限定义一个用户可读的懂的描述,它要比标签更长更详细。它可以显示给用户,以便向用户解释权限的含义---例如,当询问用户是否要给另一个应用程序授予对应的权限的时候,就会把这个属性所定义的说明显示给用户。

android:icon

这个属性要引用一个可绘制的图标资源,用于代表这个权限。

android:label

这个属性定义了一个能够显示给用户的权限名称。

为了方便,在开发应用程序时,这个标签能够直接使用原生的字符串。但是当应用程序要正式发布时,它应用使用一个字符串资源来设置,以便它能够跟用户界面中的其他字符串一样被本地化。

android:name

这个属性定义了权限的名称。它是在程序代码中引用的权限的名称---例如,在一个<uses-permission>元素中和应用程序组件中的permission属性。

这个名称必须是唯一的,因此要使用Java样式的命名规则---例如:com.example.project.PERMITTED_ACTION

android:permissionGroup

这个属性用于把这个权限分配到一个权限组中。这个属性的值是一个权限组的名称,它必须是在本应用程序或另一个应用中用<permission-group>元素声明的权限组。如果这个属性没有被设置,那么这个权限不属于任何权限分组。

android:protectionLevel

特权就意味着潜在的风险,因此在判定是否要把权限授予请求的应用程序时,使用这个属性定义来指示系统应该遵循的过程。它可能是表中的值之一。

说明

normal

默认值。这是让请求的应
用程序访问独立的应用程序级功能的一个较低风险的权限,它会给另一个应用程序、系统、或用户带来最小化的风险。系统在安装应用程序时会自动的把这种类型的
权限授予请求的应用程序,而不需要用户明确的批准(虽然在安装应用程序之前,用户始终可以有选择的查看这些权限)。

dangerous

这个是一个较高风险的授
权,它会让请求该权限的应用程序访问私有的用户数据,或者控制用户设备,从而给用户带来负面影响。因为这种权限会引入潜在的风险,因此系统不会自动把这种
权限授予请求这个权限的应用程序。例如,应用程序所请求的这些dangerous类型的权限,在确认处理之前,可以显示给用户,或者采用一些其他的方法,
以避免用户自动把权限授予所请求的应用程序。

signature

系统只会把这种权限授予具有相同数字签名的应用程序,也就是说,请求该权限的应用程序要与声明该权限的应用程序具有相同的数字签名。如果证书匹配,系统就会自动的把该权限请求权限的应用程序,而不会通知用户,也不会要求用户明确的批准。

signatureOrSystem

系统只会把这种权限授予
Android系统镜像中应用程序,或者是那些与系统镜像中具有相同证书签名的应用程序。请避免使用这个选项,因为signature类型的权限应该足以
满足大多数工作的需要。SingatureOrSystem权限主要用于某些特定的场景,如:多个厂商有一些要构建在系统镜像中的应用程序,并且它们共享
一些明确的特殊功能。

被引入版本(INTRODUCED IN):

API Level 1

AndroidManifest.xml文件详解(permission)的更多相关文章

  1. [转]AndroidManifest.xml文件详解

    转自:http://www.cnblogs.com/greatverve/archive/2012/05/08/AndroidManifest-xml.html AndroidManifest.xml ...

  2. AndroidManifest.xml文件详解(uses-permission)

    语法(SYNTAX): <uses-permissionandroid:name="string"/> 被包含于(CONTAINED IN): <manifest ...

  3. AndroidManifest.xml文件详解

    本文为安全专家李洋的最新一篇专栏文章<AndroidManifest.xml文件详解>.AndroidManifest.xml是一个跟安全相关的配置文件,该配置文件是Android安全保障 ...

  4. AndroidManifest.xml文件详解(meta-data)

    http://blog.csdn.net/think_soft/article/details/7567189 语法(SYNTAX): <meta-dataandroid:name=" ...

  5. AndroidManifest.xml文件详解(activity)(一)

    <activity android:allowTaskReparenting=["true" | "false"] android:alwaysRetai ...

  6. 【Android 复习】:AndroidManifest.xml 文件详解

    <?xml version="1.0" encoding="utf-8"?> <!-- package 包表示整个Android应用程序的主要 ...

  7. AndroidManifest.xml文件详解(application)

    http://blog.csdn.net/think_soft/article/details/7557101 语法(SYNATX): <application android:allowTas ...

  8. AndroidManifest.xml文件详解(permission-group)

    http://blog.csdn.net/think_soft/article/details/7578760 语法(SYNTAX): <permission-groupandroid:desc ...

  9. AndroidManifest.xml文件详解(activity)(四)

    android:multiprocess 这个属性用于设置Activity的实例能否被加载到与启动它的那个组件所在的进程中,如果设置为true,则可以,否则不可以.默认值是false. 通常,一个新的 ...

随机推荐

  1. JS日期对象扩展-日期格式化

    日期对象扩展(日期格式化)yyyy-MM-dd hh:mm:ss.S Date.prototype.format = function(fmt) { var o = { "M+" ...

  2. 数学:拓展BSGS

    当C不是素数的时候,之前介绍的BSGS就行不通了,需要用到拓展BSGS算法 方法转自https://blog.csdn.net/zzkksunboy/article/details/73162229 ...

  3. 不使用Tomcat,手写简单的web服务

    背景: 公司使用的YDB提供了http的查询数据库服务,直接通过url传入sql语句查询数据-_-||.ydb的使用参照:https://www.cnblogs.com/hd-zg/p/7115112 ...

  4. JS语句循环(100以内奇偶数、100以内与7先关的数、100以内整数的和、10以内阶乘、乘法口诀、篮球弹起高度、64格子放东西)

    3.循环 循环是操作某一个功能(执行某段代码). ①循环四要素: a 循环初始值 b 循环的条件 c 循环状态 d 循环体 ②for循环 a 穷举:把所有的可能性的都一一列出来. b 迭代:每次循环都 ...

  5. 基本控件文档-UIKit结构图---iOS-Apple苹果官方文档翻译

    本系列所有开发文档翻译链接地址:iOS7开发-Apple苹果iPhone开发Xcode官方文档翻译PDF下载地址  UIKit结构图 //转载请注明出处--本文永久链接:http://www.cnbl ...

  6. “adb server is out of date.

    今天,久未出现的著名的“adb server is out of date.  killing”又发生了,在此,将解决方法记下,以便日后查看. 1. 错误信息: C:\Users\lizy>ad ...

  7. 利用procdump+Mimikatz 绕过杀软获取Windows明文密码

    思路: 就是通过系统自带的procdump去下载存储用户名密码的文件(应该不能那么说这个文件,但是这样理解没问题),然后用猕猴桃读取. procdump.exe Procdump是一个轻量级的Sysi ...

  8. android 内核调试

    这篇文档给出使用android emulator 和 arm-linux-androideabi-gdb 调试 android kernel 的方法 1. checkout goldfish 源码: ...

  9. python基础===isinstance() 函数,判断一个对象是否是一个已知的类型

    isinstance(object, classinfo) object -- 实例对象. classinfo -- 可以是直接或间接类名.基本类型或者有它们组成的元组. >>>a ...

  10. interrupted()和isInterrupted()比较+终止线程的正确方法+暂停线程

    interrupted():测试当前线程[运行此方法的当前线程]是否已经是中断状态,执行后具有将状态标志清除为false的功能. isInterrupted():测试线程对象是否已经是中断状态,但不清 ...