Add IActivityManager.stopUserWithDelayedLocking
- Only allow delayed locking for the explicit call, stopUserWithDelayedLocking() or for implicit user stopping caused by user switching. - All other explicit user stopping should immediately lock the user. This allows immediate locking from component like DevicePolicy. - Product still should enable delayed locking explicitly and if it is disabled, IActivityManager.stopUserWithDelayedLocking will behave the same with IActivityManager.stopUser. - Once user is stopped in delayed locking mode, one of following steps can completely lock the user (this is not a complete list): 1. User is asked to be stopped with IActivityManager.stopUser call. 2. User is restarted through IActivityManager.restartUserInBackground call. 3. UserManager.evictCredentialEncryptyionKey (involves restartUserInBackground call) 4. When user is removed (involves IActivityManager.stopUser call). Bug: 131757355 Test: run unit tests check user locking in car device where delayed locking is enabled. Change-Id: I663ffde3a5b74738a6f59b4282ff562146f22662
Loading
Please register or sign in to comment