public class PermissionInfo
extends PackageItemInfo implements Parcelable
| java.lang.Object | ||
| android.content.pm.PackageItemInfo | ||
| android.content.pm.PermissionInfo | ||
您可以检索有关系统已知的特定安全权限的信息。 这对应于从AndroidManifest.xml的<permission>标签收集的信息。
Inherited constants |
|---|
android.os.Parcelable
|
Fields |
|
|---|---|
public static final Creator<PermissionInfo> |
CREATOR |
public int |
descriptionRes 此权限描述的字符串资源标识符(位于程序包的资源中)。 |
public int |
flags 有关此权限的其他标志由 |
public String |
group 根据 |
public CharSequence |
nonLocalizedDescription AndroidManifest文件中提供的描述字符串(如果有的话)。 |
public int |
protectionLevel 根据 |
Inherited fields |
|---|
android.content.pm.PackageItemInfo
|
Public constructors |
|
|---|---|
PermissionInfo() |
|
PermissionInfo(PermissionInfo orig) |
|
公共方法(Public methods) |
|
|---|---|
int |
describeContents() 描述此Parcelable实例的封送表示中包含的特殊对象的种类。 |
CharSequence |
loadDescription(PackageManager pm) 检索此权限的文本说明。 |
String |
toString() 返回对象的字符串表示形式。 |
void |
writeToParcel(Parcel dest, int parcelableFlags) |
继承方法(Inherited methods) |
|
|---|---|
android.content.pm.PackageItemInfo
|
|
java.lang.Object
|
|
android.os.Parcelable
|
|
int FLAG_COSTS_MONEY
标志为 flags ,对应 costsMoney值为 permissionFlags 。
常数值:1(0x00000001)
int FLAG_INSTALLED
标志为 flags ,表示此权限已安装到系统的全局定义权限中。
常量值:1073741824(0x40000000)
int PROTECTION_DANGEROUS
protectionLevel危险值,对应于 dangerous值 protectionLevel 。
常数值:1(0x00000001)
int PROTECTION_FLAG_APPOP
protectionLevel附加标志,对应于 appop值 protectionLevel 。
常量值:64(0x00000040)
int PROTECTION_FLAG_DEVELOPMENT
为额外的标志 protectionLevel ,对应于 development的值 protectionLevel 。
常量值:32(0x00000020)
int PROTECTION_FLAG_INSTALLER
protectionLevel附加标志,对应于 installer值 protectionLevel 。
常量值:256(0x00000100)
int PROTECTION_FLAG_PRE23
protectionLevel附加标志,对应于 pre23值 protectionLevel 。
常量值:128(0x00000080)
int PROTECTION_FLAG_PREINSTALLED
protectionLevel附加标志,对应于 preinstalled值 protectionLevel 。
常量值:1024(0x00000400)
int PROTECTION_FLAG_PRIVILEGED
protectionLevel附加标志,对应于 privileged值 protectionLevel 。
常量值:16(0x00000010)
int PROTECTION_FLAG_SETUP
protectionLevel附加标志,对应于 setup值 protectionLevel 。
常量值:2048(0x00000800)
int PROTECTION_FLAG_SYSTEM
此常数在API级别23中已弃用。
旧名称为PROTECTION_FLAG_PRIVILEGED ,现在非常混乱,因为它只适用于特权应用程序,而不适用于系统映像中的所有应用程序。
常量值:16(0x00000010)
int PROTECTION_FLAG_VERIFIER
protectionLevel附加标志,对应于 verifier值 protectionLevel 。
常量值:512(0x00000200)
int PROTECTION_MASK_BASE
面膜为 protectionLevel :基本保护类型。
常量值:15(0x0000000f)
int PROTECTION_MASK_FLAGS
protectionLevel掩码:附加标志位。
常量值:4080(0x00000ff0)
int PROTECTION_NORMAL
protectionLevel正常应用程序值,对应于 normal值 protectionLevel 。
常量值:0(0x00000000)
int PROTECTION_SIGNATURE
protectionLevel系统级值,对应于 signature值 protectionLevel 。
常量值:2(0x00000002)
int PROTECTION_SIGNATURE_OR_SYSTEM
此常数在API级别23中已弃用。
使用PROTECTION_SIGNATURE | PROTECTION_FLAG_PRIVILEGED 。
常量值:3(0x00000003)
int descriptionRes
此权限描述的字符串资源标识符(位于程序包的资源中)。 从“description”属性或如果未设置,则为0。
CharSequence nonLocalizedDescription
AndroidManifest文件中提供的描述字符串(如果有的话)。 您可能不想使用这个,因为如果描述位于资源中它将为空。 您可能需要loadDescription(PackageManager) 。
int protectionLevel
根据protectionLevel ,访问权限的级别得到保护。 值可以是PROTECTION_NORMAL , PROTECTION_DANGEROUS ,或PROTECTION_SIGNATURE 。 也可能包含附加标志PROTECTION_FLAG_SYSTEM或PROTECTION_FLAG_DEVELOPMENT (这些附加标志仅与基础PROTECTION_SIGNATURE结合使用才有意义。
PermissionInfo (PermissionInfo orig)
| 参数(Parameters) | |
|---|---|
orig |
PermissionInfo
|
int describeContents ()
描述此Parcelable实例的封送表示中包含的特殊对象的种类。 例如,如果对象将在writeToParcel(Parcel, int)的输出中包含writeToParcel(Parcel, int) ,则此方法的返回值必须包含CONTENTS_FILE_DESCRIPTOR位。
| 返回(Returns) | |
|---|---|
int |
a bitmask indicating the set of special object types marshaled by this Parcelable object instance. |
CharSequence loadDescription (PackageManager pm)
检索此权限的文本说明。 这将回调给定的PackageManager以从应用程序加载描述。
| 参数(Parameters) | |
|---|---|
pm |
PackageManager: A PackageManager from which the label can be loaded; usually the PackageManager from which you originally retrieved this item. |
| 返回(Returns) | |
|---|---|
CharSequence |
Returns a CharSequence containing the permission's description. If there is no description, null is returned. |
String toString ()
返回对象的字符串表示形式。 一般来说, toString方法会返回一个“文本地表示”该对象的字符串。 结果应该是一个简洁但内容丰富的表述,对于一个人来说很容易阅读。 建议所有子类重写此方法。
类Object的toString方法返回一个字符串,其中包含对象为实例的类的名称,符号字符“ @ ”以及对象的哈希代码的无符号十六进制表示形式。 换句话说,这个方法返回一个字符串,其值等于:
getClass().getName() + '@' + Integer.toHexString(hashCode())
| 返回(Returns) | |
|---|---|
String |
a string representation of the object. |
void writeToParcel (Parcel dest, int parcelableFlags)
| 参数(Parameters) | |
|---|---|
dest |
Parcel
|
parcelableFlags |
int
|