Merge "Read build flag to determine user model." into pi-dev

This commit is contained in:
Ying Zheng
2018-06-04 23:21:44 +00:00
committed by Android (Google) Code Review

View File

@@ -25,6 +25,7 @@ import android.content.pm.UserInfo;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.os.SystemProperties;
import android.os.UserHandle;
import android.os.UserManager;
import android.util.Log;
@@ -42,6 +43,7 @@ import java.util.List;
@Deprecated
public final class UserManagerHelper {
private static final String TAG = "UserManagerHelper";
private static final String HEADLESS_SYSTEM_USER = "android.car.systemuser.headless";
private final Context mContext;
private final UserManager mUserManager;
private final ActivityManager mActivityManager;
@@ -76,6 +78,15 @@ public final class UserManagerHelper {
unregisterReceiver();
}
/**
* Returns {@code true} if the system is in the headless user 0 model.
*
* @return {@boolean true} if headless system user.
*/
public boolean isHeadlessSystemUser() {
return SystemProperties.getBoolean(HEADLESS_SYSTEM_USER, false);
}
/**
* Gets UserInfo for the foreground user.
*
@@ -169,6 +180,9 @@ public final class UserManagerHelper {
* Gets all the users on the system that are not currently being removed.
*/
public List<UserInfo> getAllUsers() {
if (isHeadlessSystemUser()) {
return getAllUsersExcludesSystemUser();
}
return mUserManager.getUsers(true /* excludeDying */);
}