自定义权限

在文件中,用户还可以自定义权限。permission就是自定义权限的声明,可以用来限制app中特殊组件,特性与app内部或者和其他app之间访问。写了一个引用自定义权限的例子,在安装app的时候,提示权限:

定义权限如下: <permission android:label="”自定义权限”" android:description=”@string/test” android:name=”com.example.project.TEST” android:protectionLevel=”normal” android:icon=”@drawable/ic_launcher”> 声明的含义如下;

android:label:权限名字,显示给用户的,值可是一个string数据,例如这里的“自定义权限”。

android:description:比label更长的对权限的描述。值是通过resource文件中获取的,不能直接写string值,例如这里的”@string/test”。

android:name:权限名字,如果其他app引用该权限需要填写这个名字。

android:protectionLevel:权限级别,分为4个级别:
normal:低风险权限,在安装的时候,系统会自动授予权限给application。
dangerous:高风险权限,系统不会自动授予权限给app,在用到的时候,会给用户提示。
signature:签名权限,在其他app引用声明的权限的时候,需要保证两个app的签名一致。这样系统就会自动授予权限给第三方app,而不提示给用户。
signatureOrSystem:这个权限是引用该权限的app需要有和系统同样的签名才能授予的权限,一般不推荐使用。