Loading api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4953,6 +4953,7 @@ package android.app.admin { method public void setPasswordMinimumSymbols(android.content.ComponentName, int); method public void setPasswordMinimumUpperCase(android.content.ComponentName, int); method public void setPasswordQuality(android.content.ComponentName, int); method public void setProfileEnabled(android.content.ComponentName); method public int setStorageEncryption(android.content.ComponentName, boolean); method public void wipeData(int); field public static final java.lang.String ACTION_ADD_DEVICE_ADMIN = "android.app.action.ADD_DEVICE_ADMIN"; core/java/android/app/admin/DevicePolicyManager.java +19 −1 Original line number Diff line number Diff line Loading @@ -1755,9 +1755,27 @@ public class DevicePolicyManager { return false; } /** * Sets the enabled state of the profile. A profile should be enabled only once it is ready to * be used. Only the profile owner can call this. * * @see #isPRofileOwnerApp * * @param admin Which {@link DeviceAdminReceiver} this request is associated with. */ public void setProfileEnabled(ComponentName admin) { if (mService != null) { try { mService.setProfileEnabled(admin); } catch (RemoteException e) { Log.w(TAG, "Failed talking with device policy service", e); } } } /** * Used to determine if a particular package is registered as the Profile Owner for the * current user. A profile owner is a special device admin that has additional priviledges * current user. A profile owner is a special device admin that has additional privileges * within the managed profile. * * @param packageName The package name of the app to compare with the registered profile owner. Loading core/java/android/app/admin/IDevicePolicyManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,7 @@ interface IDevicePolicyManager { boolean setProfileOwner(String packageName, String ownerName, int userHandle); String getProfileOwner(int userHandle); String getProfileOwnerName(int userHandle); void setProfileEnabled(in ComponentName who); boolean installCaCert(in byte[] certBuffer); void uninstallCaCert(in byte[] certBuffer); Loading services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +26 −0 Original line number Diff line number Diff line Loading @@ -2887,6 +2887,32 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { } } @Override public void setProfileEnabled(ComponentName who) { if (!mHasFeature) { return; } synchronized (this) { // Check for permissions if (who == null) { throw new NullPointerException("ComponentName is null"); } // Check if this is the profile owner who is calling getActiveAdminForCallerLocked(who, DeviceAdminInfo.USES_POLICY_PROFILE_OWNER); Slog.d(LOG_TAG, "Enabling the profile for: " + UserHandle.getCallingUserId()); long id = Binder.clearCallingIdentity(); try { Intent intent = new Intent(Intent.ACTION_MANAGED_PROFILE_ADDED); intent.putExtra(Intent.EXTRA_USER, new UserHandle(UserHandle.getCallingUserId())); intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY); mContext.sendBroadcastAsUser(intent, UserHandle.OWNER); } finally { restoreCallingIdentity(id); } } } @Override public String getProfileOwner(int userHandle) { if (!mHasFeature) { Loading Loading
api/current.txt +1 −0 Original line number Diff line number Diff line Loading @@ -4953,6 +4953,7 @@ package android.app.admin { method public void setPasswordMinimumSymbols(android.content.ComponentName, int); method public void setPasswordMinimumUpperCase(android.content.ComponentName, int); method public void setPasswordQuality(android.content.ComponentName, int); method public void setProfileEnabled(android.content.ComponentName); method public int setStorageEncryption(android.content.ComponentName, boolean); method public void wipeData(int); field public static final java.lang.String ACTION_ADD_DEVICE_ADMIN = "android.app.action.ADD_DEVICE_ADMIN";
core/java/android/app/admin/DevicePolicyManager.java +19 −1 Original line number Diff line number Diff line Loading @@ -1755,9 +1755,27 @@ public class DevicePolicyManager { return false; } /** * Sets the enabled state of the profile. A profile should be enabled only once it is ready to * be used. Only the profile owner can call this. * * @see #isPRofileOwnerApp * * @param admin Which {@link DeviceAdminReceiver} this request is associated with. */ public void setProfileEnabled(ComponentName admin) { if (mService != null) { try { mService.setProfileEnabled(admin); } catch (RemoteException e) { Log.w(TAG, "Failed talking with device policy service", e); } } } /** * Used to determine if a particular package is registered as the Profile Owner for the * current user. A profile owner is a special device admin that has additional priviledges * current user. A profile owner is a special device admin that has additional privileges * within the managed profile. * * @param packageName The package name of the app to compare with the registered profile owner. Loading
core/java/android/app/admin/IDevicePolicyManager.aidl +1 −0 Original line number Diff line number Diff line Loading @@ -107,6 +107,7 @@ interface IDevicePolicyManager { boolean setProfileOwner(String packageName, String ownerName, int userHandle); String getProfileOwner(int userHandle); String getProfileOwnerName(int userHandle); void setProfileEnabled(in ComponentName who); boolean installCaCert(in byte[] certBuffer); void uninstallCaCert(in byte[] certBuffer); Loading
services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +26 −0 Original line number Diff line number Diff line Loading @@ -2887,6 +2887,32 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub { } } @Override public void setProfileEnabled(ComponentName who) { if (!mHasFeature) { return; } synchronized (this) { // Check for permissions if (who == null) { throw new NullPointerException("ComponentName is null"); } // Check if this is the profile owner who is calling getActiveAdminForCallerLocked(who, DeviceAdminInfo.USES_POLICY_PROFILE_OWNER); Slog.d(LOG_TAG, "Enabling the profile for: " + UserHandle.getCallingUserId()); long id = Binder.clearCallingIdentity(); try { Intent intent = new Intent(Intent.ACTION_MANAGED_PROFILE_ADDED); intent.putExtra(Intent.EXTRA_USER, new UserHandle(UserHandle.getCallingUserId())); intent.addFlags(Intent.FLAG_RECEIVER_REGISTERED_ONLY); mContext.sendBroadcastAsUser(intent, UserHandle.OWNER); } finally { restoreCallingIdentity(id); } } } @Override public String getProfileOwner(int userHandle) { if (!mHasFeature) { Loading