Merge "Allow developer options in retail mode" into pi-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
0f4545ac64
@@ -59,7 +59,8 @@ public abstract class AbstractEnableAdbPreferenceController extends
|
||||
|
||||
@Override
|
||||
public boolean isAvailable() {
|
||||
return mContext.getSystemService(UserManager.class).isAdminUser();
|
||||
final UserManager um = mContext.getSystemService(UserManager.class);
|
||||
return um != null && (um.isAdminUser() || um.isDemoUser());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -45,8 +45,7 @@ public class DevelopmentSettingsEnabler {
|
||||
Build.TYPE.equals("eng") ? 1 : 0) != 0;
|
||||
final boolean hasRestriction = um.hasUserRestriction(
|
||||
UserManager.DISALLOW_DEBUGGING_FEATURES);
|
||||
final boolean isAdmin = um.isAdminUser();
|
||||
|
||||
return isAdmin && !hasRestriction && settingEnabled;
|
||||
final boolean isAdminOrDemo = um.isAdminUser() || um.isDemoUser();
|
||||
return isAdminOrDemo && !hasRestriction && settingEnabled;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,11 +73,22 @@ public class DevelopmentSettingsEnablerTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isEnabled_settingsOn_noRestriction_notAdmin_shouldReturnFalse() {
|
||||
public void isEnabled_settingsOn_noRestriction_notAdmin_notDemo_shouldReturnFalse() {
|
||||
Settings.Global.putInt(mContext.getContentResolver(),
|
||||
Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1);
|
||||
ShadowUserManager.getShadow().setIsAdminUser(false);
|
||||
ShadowUserManager.getShadow().setIsDemoUser(false);
|
||||
|
||||
assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isEnabled_settingsOn_noRestriction_notAdmin_isDemo_shouldReturnTrue() {
|
||||
Settings.Global.putInt(mContext.getContentResolver(),
|
||||
Settings.Global.DEVELOPMENT_SETTINGS_ENABLED, 1);
|
||||
ShadowUserManager.getShadow().setIsAdminUser(false);
|
||||
ShadowUserManager.getShadow().setIsDemoUser(true);
|
||||
|
||||
assertThat(DevelopmentSettingsEnabler.isDevelopmentSettingsEnabled(mContext)).isTrue();
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user