自定义权限,主要用于保护被赋予权限的组件。
安卓中目前,我只在设置属性 exported 为 true 的 Activity 中使用过。
下面记录一下自定义权限方法:
1.首先需要声明这个权限:
<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"] />
属性 | 含义 | 是否必须 |
---|---|---|
name | 自定义的权限名称,需要遵循Android权限定义命名方案:.permission. | 是 |
protectionLevel | 与权限相关的"风险级别"。必须是以下值之一: normal,dangerous, signature, signatureOrSystem 。这取决于保护级别,在确定是否授予权限时,系统可能采取不同的操作。normal 表示权限是低风险的,不会对系统、用户或其他应用程序造成危害;dangerous 表示权限是高风险的,系统将可能要求用户输入相关信息,才会授予此权限;signature 表示只有当应用程序所用数字签名与声明引权限的应用程序所用数字签名相同时,才能将权限授给它;signatureOrSystem 表示将权限授给具有相同数字签名的应用程序或android 包类。这一保护级别适和于非常特殊的情况,比如多个供应商需要通过系统映像共享功能时 | 是 |
permissionGroup | 可以将权限放在一个组中,但对于自定期义权限,应该避免设置此属性。如果确实希望设置此属性,可能使用以下属性代替:android.permisson-group.SYSTEM_TOOLS | 否 |
label | 可使用它对权限进行简短描述 | 否 |
description | 使用它提供对权限用途和所保护对象的更有用的描述 | 否 |
icon | 权限可以与资源目录以外的图标相关联 ( 比如@drawable/myicon) | 否 |
- 使用权限
注意两点:
- 1.使用时,使用到这个权限的应用都需要声明这个权限
- 2.权限的格式为 .permission.
累了,不想写
网友评论