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

am: 9b5267f914

Change-Id: I08c8e72fdbad7b20ac6039c441feabf2ac31205c
This commit is contained in:
Ying Zheng
2018-06-04 17:16:19 -07:00
committed by android-build-merger

View File

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