Fix disabling lockscreen for demo users.

LockSettingsService cleans up data for an user on receiving
ACTION_USER_ADDED. As a result, the value set by the
RetailDemoModeService was getting lost.

Bug: 29912660
Change-Id: I2414a5586ab0187bc003cd6ee8b9f1645406235f
This commit is contained in:
Sudheer Shanka
2016-07-13 11:58:37 -07:00
parent 5bd9ea82d2
commit b6ed667f04

View File

@@ -321,8 +321,6 @@ public class RetailDemoModeService extends SystemService {
private void setupDemoUser(UserInfo userInfo) {
UserManager um = getUserManager();
UserHandle user = UserHandle.of(userInfo.id);
LockPatternUtils lockPatternUtils = new LockPatternUtils(getContext());
lockPatternUtils.setLockScreenDisabled(true, userInfo.id);
um.setUserRestriction(UserManager.DISALLOW_CONFIG_WIFI, true, user);
um.setUserRestriction(UserManager.DISALLOW_INSTALL_UNKNOWN_SOURCES, true, user);
um.setUserRestriction(UserManager.DISALLOW_CONFIG_MOBILE_NETWORKS, true, user);
@@ -496,6 +494,9 @@ public class RetailDemoModeService extends SystemService {
mAmi.updatePersistentConfigurationForUser(getSystemUsersConfiguration(), userId);
turnOffAllFlashLights();
muteVolumeStreams();
// Disable lock screen for demo users.
LockPatternUtils lockPatternUtils = new LockPatternUtils(getContext());
lockPatternUtils.setLockScreenDisabled(true, userId);
mNm.notifyAsUser(TAG, 1, createResetNotification(), UserHandle.of(userId));
synchronized (mActivityLock) {