Loading src/com/android/packageinstaller/UninstallFinish.java +13 −3 Original line number Diff line number Diff line Loading @@ -47,7 +47,6 @@ public class UninstallFinish extends BroadcastReceiver { private static final String LOG_TAG = UninstallFinish.class.getSimpleName(); static final String EXTRA_UNINSTALL_ID = "com.android.packageinstaller.extra.UNINSTALL_ID"; static final String EXTRA_APP_INFO = "com.android.packageinstaller.extra.APP_INFO"; static final String EXTRA_APP_LABEL = "com.android.packageinstaller.extra.APP_LABEL"; @Override Loading @@ -60,8 +59,10 @@ public class UninstallFinish extends BroadcastReceiver { } int uninstallId = intent.getIntExtra(EXTRA_UNINSTALL_ID, 0); ApplicationInfo appInfo = intent.getParcelableExtra(EXTRA_APP_INFO); ApplicationInfo appInfo = intent.getParcelableExtra( PackageUtil.INTENT_ATTR_APPLICATION_INFO); String appLabel = intent.getStringExtra(EXTRA_APP_LABEL); boolean allUsers = intent.getBooleanExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, false); NotificationManager notificationManager = context.getSystemService(NotificationManager.class); Loading Loading @@ -152,7 +153,16 @@ public class UninstallFinish extends BroadcastReceiver { + returnCode + " no blocking user"); } else if (blockingUserId == UserHandle.USER_SYSTEM) { setBigText(uninstallFailedNotification, context.getString(R.string.uninstall_blocked_profile_owner)); context.getString(R.string.uninstall_blocked_device_owner)); } else { if (allUsers) { setBigText(uninstallFailedNotification, context.getString( R.string.uninstall_all_blocked_profile_owner)); } else { setBigText(uninstallFailedNotification, context.getString( R.string.uninstall_blocked_profile_owner)); } } break; } Loading src/com/android/packageinstaller/UninstallerActivity.java +15 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.packageinstaller; import android.app.Activity; import android.app.ActivityThread; import android.app.DialogFragment; import android.app.Fragment; import android.app.FragmentTransaction; Loading Loading @@ -197,7 +198,9 @@ public class UninstallerActivity extends Activity { public void startUninstallProgress() { boolean returnResult = getIntent().getBooleanExtra(Intent.EXTRA_RETURN_RESULT, false); if (isTv() || returnResult || mDialogInfo.allUsers || mDialogInfo.callback != null) { if (isTv() || returnResult || mDialogInfo.callback != null || getCallingActivity() != null) { Intent newIntent = new Intent(Intent.ACTION_VIEW); newIntent.putExtra(Intent.EXTRA_USER, mDialogInfo.user); newIntent.putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, mDialogInfo.allUsers); Loading @@ -216,7 +219,9 @@ public class UninstallerActivity extends Activity { CharSequence label = mDialogInfo.appInfo.loadLabel(getPackageManager()); Intent broadcastIntent = new Intent(this, UninstallFinish.class); broadcastIntent.putExtra(UninstallFinish.EXTRA_APP_INFO, mDialogInfo.appInfo); broadcastIntent.putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, mDialogInfo.allUsers); broadcastIntent.putExtra(PackageUtil.INTENT_ATTR_APPLICATION_INFO, mDialogInfo.appInfo); broadcastIntent.putExtra(UninstallFinish.EXTRA_APP_LABEL, label); broadcastIntent.putExtra(UninstallFinish.EXTRA_UNINSTALL_ID, uninstallId); Loading @@ -232,8 +237,14 @@ public class UninstallerActivity extends Activity { getSystemService(NotificationManager.class).notify(uninstallId, uninstallingNotification); getPackageManager().getPackageInstaller().uninstall(mDialogInfo.appInfo.packageName, pendingIntent.getIntentSender()); try { ActivityThread.getPackageManager().getPackageInstaller().uninstall( mDialogInfo.appInfo.packageName, getPackageName(), mDialogInfo.allUsers ? PackageManager.DELETE_ALL_USERS : 0, pendingIntent.getIntentSender(), mDialogInfo.user.getIdentifier()); } catch (RemoteException e) { e.rethrowFromSystemServer(); } } } Loading Loading
src/com/android/packageinstaller/UninstallFinish.java +13 −3 Original line number Diff line number Diff line Loading @@ -47,7 +47,6 @@ public class UninstallFinish extends BroadcastReceiver { private static final String LOG_TAG = UninstallFinish.class.getSimpleName(); static final String EXTRA_UNINSTALL_ID = "com.android.packageinstaller.extra.UNINSTALL_ID"; static final String EXTRA_APP_INFO = "com.android.packageinstaller.extra.APP_INFO"; static final String EXTRA_APP_LABEL = "com.android.packageinstaller.extra.APP_LABEL"; @Override Loading @@ -60,8 +59,10 @@ public class UninstallFinish extends BroadcastReceiver { } int uninstallId = intent.getIntExtra(EXTRA_UNINSTALL_ID, 0); ApplicationInfo appInfo = intent.getParcelableExtra(EXTRA_APP_INFO); ApplicationInfo appInfo = intent.getParcelableExtra( PackageUtil.INTENT_ATTR_APPLICATION_INFO); String appLabel = intent.getStringExtra(EXTRA_APP_LABEL); boolean allUsers = intent.getBooleanExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, false); NotificationManager notificationManager = context.getSystemService(NotificationManager.class); Loading Loading @@ -152,7 +153,16 @@ public class UninstallFinish extends BroadcastReceiver { + returnCode + " no blocking user"); } else if (blockingUserId == UserHandle.USER_SYSTEM) { setBigText(uninstallFailedNotification, context.getString(R.string.uninstall_blocked_profile_owner)); context.getString(R.string.uninstall_blocked_device_owner)); } else { if (allUsers) { setBigText(uninstallFailedNotification, context.getString( R.string.uninstall_all_blocked_profile_owner)); } else { setBigText(uninstallFailedNotification, context.getString( R.string.uninstall_blocked_profile_owner)); } } break; } Loading
src/com/android/packageinstaller/UninstallerActivity.java +15 −4 Original line number Diff line number Diff line Loading @@ -17,6 +17,7 @@ package com.android.packageinstaller; import android.app.Activity; import android.app.ActivityThread; import android.app.DialogFragment; import android.app.Fragment; import android.app.FragmentTransaction; Loading Loading @@ -197,7 +198,9 @@ public class UninstallerActivity extends Activity { public void startUninstallProgress() { boolean returnResult = getIntent().getBooleanExtra(Intent.EXTRA_RETURN_RESULT, false); if (isTv() || returnResult || mDialogInfo.allUsers || mDialogInfo.callback != null) { if (isTv() || returnResult || mDialogInfo.callback != null || getCallingActivity() != null) { Intent newIntent = new Intent(Intent.ACTION_VIEW); newIntent.putExtra(Intent.EXTRA_USER, mDialogInfo.user); newIntent.putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, mDialogInfo.allUsers); Loading @@ -216,7 +219,9 @@ public class UninstallerActivity extends Activity { CharSequence label = mDialogInfo.appInfo.loadLabel(getPackageManager()); Intent broadcastIntent = new Intent(this, UninstallFinish.class); broadcastIntent.putExtra(UninstallFinish.EXTRA_APP_INFO, mDialogInfo.appInfo); broadcastIntent.putExtra(Intent.EXTRA_UNINSTALL_ALL_USERS, mDialogInfo.allUsers); broadcastIntent.putExtra(PackageUtil.INTENT_ATTR_APPLICATION_INFO, mDialogInfo.appInfo); broadcastIntent.putExtra(UninstallFinish.EXTRA_APP_LABEL, label); broadcastIntent.putExtra(UninstallFinish.EXTRA_UNINSTALL_ID, uninstallId); Loading @@ -232,8 +237,14 @@ public class UninstallerActivity extends Activity { getSystemService(NotificationManager.class).notify(uninstallId, uninstallingNotification); getPackageManager().getPackageInstaller().uninstall(mDialogInfo.appInfo.packageName, pendingIntent.getIntentSender()); try { ActivityThread.getPackageManager().getPackageInstaller().uninstall( mDialogInfo.appInfo.packageName, getPackageName(), mDialogInfo.allUsers ? PackageManager.DELETE_ALL_USERS : 0, pendingIntent.getIntentSender(), mDialogInfo.user.getIdentifier()); } catch (RemoteException e) { e.rethrowFromSystemServer(); } } } Loading