ac06a4907bff7d5ee0612dbb85180222e1455791 |
|
25-May-2016 |
Fyodor Kupolov <fkupolov@google.com> |
Remove ActivityManager calls with PM.mInstallLock held UserController now pushes user state to UMS. PM now checks user running/unlocking/unlocked state by calling UserManagerInternal. Bug: 28090199 Change-Id: I20e62b37f78238f28dd81f49f876732bbd3c6b34
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
6c915ead38db0a2a6393c40d4fbac959399439c5 |
|
10-May-2016 |
Fyodor Kupolov <fkupolov@google.com> |
Push unlocking/unlocked state to UserManager Push unlocking/unlocked state to UserManagerInternal when it's changed in UserController. Use UserManagerInternal.isUserUnlockingOrUnlocked when updating flags for filtering in PackageManager. Bug: 28629076 Change-Id: I8440af090f533f93870d0cff0e3871e114c37efa
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
1ddda4793c26fd249590fd3549cf060ecb7c157b |
|
12-Feb-2016 |
Lenka Trochtova <ltrochtova@google.com> |
Prevent ephemeral user from being re-entered after stop. Once the ephemeral user stops, the user's deletion is scheduled. It takes a while before the user actually disappears and it is not desirable for the user to be re-entered in the meantime. Mark the user as disabled on stop and check this flag in the activity manager to prevent the user from being switched to again. Also hide the user from user-switching UI. BUG: 26795729 BUG: 26780152 Change-Id: I83a61674958954b5a210114b88ffa5ae55922c1f
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
e9c440638e27a123a82feb5e4677ce1242785288 |
|
10-Feb-2016 |
phweiss <phweiss@google.com> |
DPM.createAndManageUser should work even with DISALLOW_ADD_USER set For this, the DPM calls a new function UserManagerInternal.createUserEvenWhenDisallowed() instead of UserManager.createUser(). This calls UserManagerService.createUserInternalUnchecked(). Also, only the system user is allowed to call this method, otherwise a security exception is thrown. Bug: 26952210 Bug: 26786199 Change-Id: I69c16354898d68592d13f5f53b840551f7ad4779
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
f348e8e22bed4b56fdb0c02702d12b36467dedd7 |
|
07-Jan-2016 |
Lenka Trochtova <ltrochtova@google.com> |
Add policy for enforcing that all users are ephemeral. BUG: 24883058 Change-Id: I8e53ca677c935a6c828dd6ece00b345d0eff182a
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
7f1f1dfc8713fbecbab60cfbe14ab4d97d27deee |
|
18-Jan-2016 |
Oleksandr Peletskyi <peletskyi@google.com> |
Added restriction if a user is allowed to change the icon. BUG: 25305966 Change-Id: I3d527224f00087b2bd959879ebb143e2ecb9c914
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
e7927da1b6dc4f96714aa9bc4fbb71b3659f8cea |
|
25-Nov-2015 |
Makoto Onuki <omakoto@google.com> |
Don't call DPM from UserManager to avoid lock inversion - Also make sure DPMS.mOwners is always guarded with DPMS.this. (and remove synchronization from Owners.) Bug 25796840 Change-Id: I83f7b78e7b437d9c2a2b1d6e714346cd15f95330
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
1a2cd74526113b45d9108b6997609122c4311fb1 |
|
16-Nov-2015 |
Makoto Onuki <omakoto@google.com> |
More work on layered user restrictions. - Now when DO/PO sets a user restriction, DPMS pushes it to UMS and then UMS persists it, in order for UserManager.hasUserRestriction() to never have to talk with DPMS, which would cause lock inversion. - Also apply user restrictions when a user start. - This is an updated version of the abandoned CL -- the difference is, ActivityManager no longer has to call DPMS. - Also removed an unnecessary write to userlist.xml in UMS. upgradeIfNecessaryLP(). Bug 23902097 Bug 25388912 Bug 25354031 Bug 25641040 Change-Id: I0948aea06ad7d0f45fe612a431d765faddfe3c58
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
d45a4a2ecb18701b4cfadcb4a26663f2eab642fe |
|
03-Nov-2015 |
Makoto Onuki <omakoto@google.com> |
Have AudioService listen to DISALLOW_UNMUTE_MICROPHONE and ... DISALLOW_ADJUST_VOLUME, instead of UserManager pushing new settings to AudioService. Also: - Allow PO to set these two restrictions. - Now AS.setMasterMuteInternal() respects mUseFixedVolume to make it consistent with readPersistedSettings(). - When a user switches and restores the mute state in AS.readPersistedSettings(), also check the current user restrictions in addition to system settings. Because of the delay in AudioService before persisting the mute settings in setMasterMuteInternal() and setMicrophoneMute(), there's was an edge case DISALLOW_UNMUTE_MICROPHONE and DISALLOW_ADJUST_VOLUME would be ignored when the user switches right after they are set. Bug 24981972 Change-Id: I4d9b709a0a0e6812319204568c6e44d6664bdeb4
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
82402753815ff4633cc572713ae490a17d9129e5 |
|
28-Oct-2015 |
Fyodor Kupolov <fkupolov@google.com> |
Introduced short-term lock for UMS internal state Added mUsersLock - short-term lock for internal state, when interaction and synchronization with PM is not required. Modifications to mUsers and mRemovingUserIds must be guarded by 3 locks: mInstallLock, mPackagesLock and mUsersLock. While reads can use mUsersLock. Testing revealed that the following methods in UMS often cause contention: - exists - getUserInfo - getProfileParent They all now use a short-term lock mUsersLock for reads. Bug: 24979571 Change-Id: Ie3a22ea7cbb450c7969800fe2a4a2b2516165e5b
/frameworks/base/core/java/android/os/UserManagerInternal.java
|
068c54a5be697c3df4657dcda33cd17c4b547710 |
|
13-Oct-2015 |
Makoto Onuki <omakoto@google.com> |
Layer user restrictions - Now DPMS remembers user restrictions set by DO / PO in their ActiveAdmin. - User restrictions set by DO/PO will no longer be saved by UserManger. Instead, when needed, UMS will consult DPMS to build "effective" user restrictions. - UM.getUserRestrictions() will now always return "effective" user restrictions. - DPMS migrates existing user restrictions per the eng spec. - Also now UM.setUserRestrictions() will crash. UMS.setUserRestrictions() has been removed. This was needed because UM.setUserRestrctions(UM.getUserRestrictions()) will no longer be a valid use like it used to be. - Also introduced a fined-grained lock for user restrictions in UM to avoid deadlock between DPMS and also for better performance. Bug 23902097 Change-Id: If0e1e49344e2f3e9226532d00777976d1eaa7df3
/frameworks/base/core/java/android/os/UserManagerInternal.java
|