diff options
author | Steven Ng <stevenckng@google.com> | 2016-03-21 12:52:27 +0000 |
---|---|---|
committer | The Android Automerger <android-build@google.com> | 2016-03-21 14:20:23 -0700 |
commit | 2ab06fb394f04afe8fc9261b4e2e0dca1b0dc01a (patch) | |
tree | a3fe8ca48013bfd104233611344fab812d0627be | |
parent | fcf3a125dd39c9d9b4fdf8884bf1809430b17942 (diff) | |
download | android_packages_apps_ManagedProvisioning-2ab06fb394f04afe8fc9261b4e2e0dca1b0dc01a.tar.gz android_packages_apps_ManagedProvisioning-2ab06fb394f04afe8fc9261b4e2e0dca1b0dc01a.tar.bz2 android_packages_apps_ManagedProvisioning-2ab06fb394f04afe8fc9261b4e2e0dca1b0dc01a.zip |
Deprecate the use of package name in Profile owner creation flow
+ Replace the use of deviceAdminPackageName with
deviceAdminComponentName.getPackageName() because, in the profile
owner provisioning, the device admin app must be installed. Even only
if the package name is provided, the device component name can be
inferred by the package name via PackageManager.
Bug: 27743708
Change-Id: I4b84c3c899a7a204b2e10ff57e4e75e7191f0340
3 files changed, 12 insertions, 8 deletions
diff --git a/src/com/android/managedprovisioning/FinalizationActivity.java b/src/com/android/managedprovisioning/FinalizationActivity.java index f77437f4..9e12c64f 100644 --- a/src/com/android/managedprovisioning/FinalizationActivity.java +++ b/src/com/android/managedprovisioning/FinalizationActivity.java @@ -116,7 +116,7 @@ public class FinalizationActivity extends Activity { return; } BroadcastReceiver mdmReceivedSuccessReceiver = new MdmReceivedSuccessReceiver( - mParams.accountToMigrate, mParams.deviceAdminPackageName); + mParams.accountToMigrate, mParams.deviceAdminComponentName.getPackageName()); sendOrderedBroadcastAsUser(provisioningCompleteIntent, managedUserHandle, null, mdmReceivedSuccessReceiver, null, Activity.RESULT_OK, null, null); diff --git a/src/com/android/managedprovisioning/ProfileOwnerProvisioningService.java b/src/com/android/managedprovisioning/ProfileOwnerProvisioningService.java index fb02bb9d..5e7ab71b 100644 --- a/src/com/android/managedprovisioning/ProfileOwnerProvisioningService.java +++ b/src/com/android/managedprovisioning/ProfileOwnerProvisioningService.java @@ -260,7 +260,7 @@ public class ProfileOwnerProvisioningService extends Service { mManagedProfileOrUserInfo.id); // TODO Add separate set of apps for MANAGED_USER, currently same as of DEVICE_OWNER. deleteNonRequiredAppsTask = new DeleteNonRequiredAppsTask(this, - mParams.deviceAdminPackageName, + mParams.deviceAdminComponentName.getPackageName(), (isProvisioningManagedUser() ? DeleteNonRequiredAppsTask.MANAGED_USER : DeleteNonRequiredAppsTask.PROFILE_OWNER), true /* creating new profile */, @@ -435,7 +435,7 @@ public class ProfileOwnerProvisioningService extends Service { // Use an ordered broadcast, so that we only finish when the mdm has received it. // Avoids a lag in the transition between provisioning and the mdm. BroadcastReceiver mdmReceivedSuccessReceiver = new MdmReceivedSuccessReceiver( - mParams.accountToMigrate, mParams.deviceAdminPackageName); + mParams.accountToMigrate, mParams.deviceAdminComponentName.getPackageName()); Intent completeIntent = new Intent(ACTION_PROFILE_PROVISIONING_COMPLETE); completeIntent.setComponent(mParams.deviceAdminComponentName); @@ -468,11 +468,11 @@ public class ProfileOwnerProvisioningService extends Service { private void installMdmOnManagedProfile() throws ProvisioningException { ProvisionLogger.logd("Installing mobile device management app " - + mParams.deviceAdminPackageName + " on managed profile"); + + mParams.deviceAdminComponentName + " on managed profile"); try { int status = mIpm.installExistingPackageAsUser( - mParams.deviceAdminPackageName, mManagedProfileOrUserInfo.id); + mParams.deviceAdminComponentName.getPackageName(), mManagedProfileOrUserInfo.id); switch (status) { case PackageManager.INSTALL_SUCCEEDED: return; @@ -495,12 +495,14 @@ public class ProfileOwnerProvisioningService extends Service { } private void setMdmAsManagedProfileOwner() throws ProvisioningException { - ProvisionLogger.logd("Setting package " + mParams.deviceAdminPackageName + ProvisionLogger.logd("Setting package " + mParams.deviceAdminComponentName + " as managed profile owner."); DevicePolicyManager dpm = (DevicePolicyManager) getSystemService(Context.DEVICE_POLICY_SERVICE); - if (!dpm.setProfileOwner(mParams.deviceAdminComponentName, mParams.deviceAdminPackageName, + if (!dpm.setProfileOwner( + mParams.deviceAdminComponentName, + mParams.deviceAdminComponentName.getPackageName(), mManagedProfileOrUserInfo.id)) { ProvisionLogger.logw("Could not set profile owner."); throw raiseError("Could not set profile owner."); @@ -508,7 +510,7 @@ public class ProfileOwnerProvisioningService extends Service { } private void setMdmAsActiveAdmin() { - ProvisionLogger.logd("Setting package " + mParams.deviceAdminPackageName + ProvisionLogger.logd("Setting package " + mParams.deviceAdminComponentName + " as active admin."); DevicePolicyManager dpm = diff --git a/src/com/android/managedprovisioning/model/ProvisioningParams.java b/src/com/android/managedprovisioning/model/ProvisioningParams.java index dde8b8d8..abcd92bb 100644 --- a/src/com/android/managedprovisioning/model/ProvisioningParams.java +++ b/src/com/android/managedprovisioning/model/ProvisioningParams.java @@ -82,6 +82,7 @@ public final class ProvisioningParams implements Parcelable { * <p>At least one one of deviceAdminPackageName and deviceAdminComponentName should be * non-null. */ + @Deprecated public final String deviceAdminPackageName; /** @@ -364,6 +365,7 @@ public final class ProvisioningParams implements Parcelable { return this; } + @Deprecated public Builder setDeviceAdminPackageName(String deviceAdminPackageName) { mDeviceAdminPackageName = deviceAdminPackageName; return this; |