056-android-AndroidManifest.xml文件中的permission与uses-permission之间的区别与用法

为了保证application的正常运行,需要系统授予app的权限声明。这个权限是在用户安装应用的时候授予的。android:name的值可以是其他app通过声明的,也可以是系统的权限名称,例如android.permission.CAMERA或android.permission.READ_CONTACTS等等。注:uses-permission的权限要求说明,可能会引起app在Android
Market中的过滤。
用法:

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

自定义权限如下:

<permission android:label="”自定义权限”"
    android:description=”@string/hello”
    android:name=”com.example.project.PERMITTED_ACTION”
    android:protectionLevel=”normal”
    android:icon=”@drawable/ic_launcher”>

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

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

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

android:protectionLevel:权限级别,分为4个级别:

normal:低风险权限,在安装的时候,系统会自动授予权限给application。

dangerous:高风险权限,系统不会自动授予权限给app,在用到的时候,会给用户提示。

signature:签名权限,在其他app引用声明的权限的时候,需要保证两个app的签名一致。这样系统就会自动授予权限给第三方app,而不提示给用户。

signatureOrSystem:这个权限是引用该权限的app需要有和系统同样的签名才能授予的权限,一般不推荐使用。

参考链接

  1. permission与uses-permission之间的区别与用法
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容