FileDocCategorySizeDatePackage
UserInfo.javaAPI DocAndroid 5.1 API5882Thu Mar 12 22:22:10 GMT 2015android.content.pm

UserInfo

public class UserInfo extends Object implements android.os.Parcelable
Per-user information.
hide

Fields Summary
public static final int
FLAG_MASK_USER_TYPE
8 bits for user type
public static final int
FLAG_PRIMARY
Primary user. Only one user can have this flag set. Meaning of this flag TBD.
public static final int
FLAG_ADMIN
User with administrative privileges. Such a user can create and delete users.
public static final int
FLAG_GUEST
Indicates a guest user that may be transient.
public static final int
FLAG_RESTRICTED
Indicates the user has restrictions in privileges, in addition to those for normal users. Exact meaning TBD. For instance, maybe they can't install apps or administer WiFi access pts.
public static final int
FLAG_INITIALIZED
Indicates that this user has gone through its first-time initialization.
public static final int
FLAG_MANAGED_PROFILE
Indicates that this user is a profile of another user, for example holding a users corporate data.
public static final int
FLAG_DISABLED
Indicates that this user is disabled.
public static final int
NO_PROFILE_GROUP_ID
public int
id
public int
serialNumber
public String
name
public String
iconPath
public int
flags
public long
creationTime
public long
lastLoggedInTime
public int
profileGroupId
public boolean
partial
User is only partially created.
public boolean
guestToRemove
public static final Parcelable.Creator
CREATOR
Constructors Summary
public UserInfo(int id, String name, int flags)


           
        this(id, name, null, flags);
    
public UserInfo()

    
public UserInfo(UserInfo orig)

        name = orig.name;
        iconPath = orig.iconPath;
        id = orig.id;
        flags = orig.flags;
        serialNumber = orig.serialNumber;
        creationTime = orig.creationTime;
        lastLoggedInTime = orig.lastLoggedInTime;
        partial = orig.partial;
        profileGroupId = orig.profileGroupId;
        guestToRemove = orig.guestToRemove;
    
private UserInfo(android.os.Parcel source)


       
        id = source.readInt();
        name = source.readString();
        iconPath = source.readString();
        flags = source.readInt();
        serialNumber = source.readInt();
        creationTime = source.readLong();
        lastLoggedInTime = source.readLong();
        partial = source.readInt() != 0;
        profileGroupId = source.readInt();
        guestToRemove = source.readInt() != 0;
    
public UserInfo(int id, String name, String iconPath, int flags)

        this.id = id;
        this.name = name;
        this.flags = flags;
        this.iconPath = iconPath;
        this.profileGroupId = NO_PROFILE_GROUP_ID;
    
Methods Summary
public intdescribeContents()

        return 0;
    
public android.os.UserHandlegetUserHandle()

        return new UserHandle(id);
    
public booleanisAdmin()

        return (flags & FLAG_ADMIN) == FLAG_ADMIN;
    
public booleanisEnabled()

        return (flags & FLAG_DISABLED) != FLAG_DISABLED;
    
public booleanisGuest()

        return (flags & FLAG_GUEST) == FLAG_GUEST;
    
public booleanisManagedProfile()

        return (flags & FLAG_MANAGED_PROFILE) == FLAG_MANAGED_PROFILE;
    
public booleanisPrimary()

        return (flags & FLAG_PRIMARY) == FLAG_PRIMARY;
    
public booleanisRestricted()

        return (flags & FLAG_RESTRICTED) == FLAG_RESTRICTED;
    
public booleansupportsSwitchTo()

return
true if this user can be switched to.

        // TODO remove fw.show_hidden_users when we have finished developing managed profiles.
        return !isManagedProfile() || SystemProperties.getBoolean("fw.show_hidden_users", false);
    
public java.lang.StringtoString()

        return "UserInfo{" + id + ":" + name + ":" + Integer.toHexString(flags) + "}";
    
public voidwriteToParcel(android.os.Parcel dest, int parcelableFlags)

        dest.writeInt(id);
        dest.writeString(name);
        dest.writeString(iconPath);
        dest.writeInt(flags);
        dest.writeInt(serialNumber);
        dest.writeLong(creationTime);
        dest.writeLong(lastLoggedInTime);
        dest.writeInt(partial ? 1 : 0);
        dest.writeInt(profileGroupId);
        dest.writeInt(guestToRemove ? 1 : 0);