FileDocCategorySizeDatePackage
PermissionInfo.javaAPI DocAndroid 1.5 API5290Wed May 06 22:41:54 BST 2009android.content.pm

PermissionInfo

public class PermissionInfo extends PackageItemInfo implements android.os.Parcelable
Information you can retrieve about a particular security permission known to the system. This corresponds to information collected from the AndroidManifest.xml's <permission> tags.

Fields Summary
public static final int
PROTECTION_NORMAL
A normal application value for {@link #protectionLevel}, corresponding to the normal value of {@link android.R.attr#protectionLevel}.
public static final int
PROTECTION_DANGEROUS
Dangerous value for {@link #protectionLevel}, corresponding to the dangerous value of {@link android.R.attr#protectionLevel}.
public static final int
PROTECTION_SIGNATURE
System-level value for {@link #protectionLevel}, corresponding to the signature value of {@link android.R.attr#protectionLevel}.
public static final int
PROTECTION_SIGNATURE_OR_SYSTEM
System-level value for {@link #protectionLevel}, corresponding to the signatureOrSystem value of {@link android.R.attr#protectionLevel}.
public String
group
The group this permission is a part of, as per {@link android.R.attr#permissionGroup}.
public int
descriptionRes
A string resource identifier (in the package's resources) of this permission's description. From the "description" attribute or, if not set, 0.
public CharSequence
nonLocalizedDescription
The description string provided in the AndroidManifest file, if any. You probably don't want to use this, since it will be null if the description is in a resource. You probably want {@link PermissionInfo#loadDescription} instead.
public int
protectionLevel
The level of access this permission is protecting, as per {@link android.R.attr#protectionLevel}. Values may be {@link #PROTECTION_NORMAL}, {@link #PROTECTION_DANGEROUS}, or {@link #PROTECTION_SIGNATURE}.
public static final Creator
CREATOR
Constructors Summary
public PermissionInfo()


      
    
public PermissionInfo(PermissionInfo orig)

        super(orig);
        group = orig.group;
        descriptionRes = orig.descriptionRes;
        protectionLevel = orig.protectionLevel;
        nonLocalizedDescription = orig.nonLocalizedDescription;
    
private PermissionInfo(android.os.Parcel source)


       
        super(source);
        group = source.readString();
        descriptionRes = source.readInt();
        protectionLevel = source.readInt();
        nonLocalizedDescription = TextUtils.CHAR_SEQUENCE_CREATOR.createFromParcel(source);
    
Methods Summary
public intdescribeContents()

        return 0;
    
public java.lang.CharSequenceloadDescription(PackageManager pm)
Retrieve the textual description of this permission. This will call back on the given PackageManager to load the description from the application.

param
pm A PackageManager from which the label can be loaded; usually the PackageManager from which you originally retrieved this item.
return
Returns a CharSequence containing the permission's description. If there is no description, null is returned.

        if (nonLocalizedDescription != null) {
            return nonLocalizedDescription;
        }
        if (descriptionRes != 0) {
            CharSequence label = pm.getText(packageName, descriptionRes, null);
            if (label != null) {
                return label;
            }
        }
        return null;
    
public java.lang.StringtoString()

        return "PermissionInfo{"
            + Integer.toHexString(System.identityHashCode(this))
            + " " + name + "}";
    
public voidwriteToParcel(android.os.Parcel dest, int parcelableFlags)

        super.writeToParcel(dest, parcelableFlags);
        dest.writeString(group);
        dest.writeInt(descriptionRes);
        dest.writeInt(protectionLevel);
        TextUtils.writeToParcel(nonLocalizedDescription, dest, parcelableFlags);