Merge "Make DPM.clearProfileOwner() public."
This commit is contained in:
@@ -5789,6 +5789,7 @@ package android.app.admin {
|
||||
method public void clearCrossProfileIntentFilters(android.content.ComponentName);
|
||||
method public void clearDeviceOwnerApp(java.lang.String);
|
||||
method public void clearPackagePersistentPreferredActivities(android.content.ComponentName, java.lang.String);
|
||||
method public void clearProfileOwner(android.content.ComponentName);
|
||||
method public void clearUserRestriction(android.content.ComponentName, java.lang.String);
|
||||
method public deprecated android.os.UserHandle createAndInitializeUser(android.content.ComponentName, java.lang.String, java.lang.String, android.content.ComponentName, android.os.Bundle);
|
||||
method public android.os.UserHandle createAndManageUser(android.content.ComponentName, java.lang.String, android.content.ComponentName, android.os.PersistableBundle, int);
|
||||
|
||||
@@ -5791,6 +5791,7 @@ package android.app.admin {
|
||||
method public void clearCrossProfileIntentFilters(android.content.ComponentName);
|
||||
method public void clearDeviceOwnerApp(java.lang.String);
|
||||
method public void clearPackagePersistentPreferredActivities(android.content.ComponentName, java.lang.String);
|
||||
method public void clearProfileOwner(android.content.ComponentName);
|
||||
method public void clearUserRestriction(android.content.ComponentName, java.lang.String);
|
||||
method public deprecated android.os.UserHandle createAndInitializeUser(android.content.ComponentName, java.lang.String, java.lang.String, android.content.ComponentName, android.os.Bundle);
|
||||
method public android.os.UserHandle createAndManageUser(android.content.ComponentName, java.lang.String, android.content.ComponentName, android.os.PersistableBundle, int);
|
||||
|
||||
@@ -3244,15 +3244,14 @@ public class DevicePolicyManager {
|
||||
}
|
||||
|
||||
/**
|
||||
* @hide
|
||||
* Clears the active profile owner and removes all user restrictions. The caller must
|
||||
* be from the same package as the active profile owner for this user, otherwise a
|
||||
* SecurityException will be thrown.
|
||||
*
|
||||
* <p>This doesn't work for managed profile owners.
|
||||
*
|
||||
* @param admin The component to remove as the profile owner.
|
||||
* @return
|
||||
*/
|
||||
@SystemApi
|
||||
public void clearProfileOwner(@NonNull ComponentName admin) {
|
||||
if (mService != null) {
|
||||
try {
|
||||
|
||||
@@ -5423,7 +5423,9 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
|
||||
if (!mHasFeature) {
|
||||
return;
|
||||
}
|
||||
UserHandle callingUser = mInjector.binderGetCallingUserHandle();
|
||||
final UserHandle callingUser = mInjector.binderGetCallingUserHandle();
|
||||
final int userId = callingUser.getIdentifier();
|
||||
enforceNotManagedProfile(userId, "clear profile owner");
|
||||
// Check if this is the profile owner who is calling
|
||||
final ActiveAdmin admin =
|
||||
getActiveAdminForCallerLocked(who, DeviceAdminInfo.USES_POLICY_PROFILE_OWNER);
|
||||
@@ -5431,7 +5433,6 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {
|
||||
admin.disableCamera = false;
|
||||
admin.userRestrictions = null;
|
||||
clearUserPoliciesLocked(callingUser);
|
||||
final int userId = callingUser.getIdentifier();
|
||||
mOwners.removeProfileOwner(userId);
|
||||
mOwners.writeProfileOwner(userId);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user