Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1e995c76 authored by Christopher Tate's avatar Christopher Tate Committed by Android (Google) Code Review
Browse files

Merge "Update PackageMonitor to recognize new 'replacing' semantics" into klp-dev

parents fee6f69e 88c90832
Loading
Loading
Loading
Loading
+6 −4
Original line number Original line Diff line number Diff line
@@ -372,23 +372,25 @@ public abstract class PackageMonitor extends android.content.BroadcastReceiver {
        } else if (Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE.equals(action)) {
        } else if (Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE.equals(action)) {
            String[] pkgList = intent.getStringArrayExtra(Intent.EXTRA_CHANGED_PACKAGE_LIST);
            String[] pkgList = intent.getStringArrayExtra(Intent.EXTRA_CHANGED_PACKAGE_LIST);
            mAppearingPackages = pkgList;
            mAppearingPackages = pkgList;
            mChangeType = PACKAGE_TEMPORARY_CHANGE;
            mChangeType = intent.getBooleanExtra(Intent.EXTRA_REPLACING, false)
                    ? PACKAGE_UPDATING : PACKAGE_TEMPORARY_CHANGE;
            mSomePackagesChanged = true;
            mSomePackagesChanged = true;
            if (pkgList != null) {
            if (pkgList != null) {
                onPackagesAvailable(pkgList);
                onPackagesAvailable(pkgList);
                for (int i=0; i<pkgList.length; i++) {
                for (int i=0; i<pkgList.length; i++) {
                    onPackageAppeared(pkgList[i], PACKAGE_TEMPORARY_CHANGE);
                    onPackageAppeared(pkgList[i], mChangeType);
                }
                }
            }
            }
        } else if (Intent.ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE.equals(action)) {
        } else if (Intent.ACTION_EXTERNAL_APPLICATIONS_UNAVAILABLE.equals(action)) {
            String[] pkgList = intent.getStringArrayExtra(Intent.EXTRA_CHANGED_PACKAGE_LIST);
            String[] pkgList = intent.getStringArrayExtra(Intent.EXTRA_CHANGED_PACKAGE_LIST);
            mDisappearingPackages = pkgList;
            mDisappearingPackages = pkgList;
            mChangeType = PACKAGE_TEMPORARY_CHANGE;
            mChangeType = intent.getBooleanExtra(Intent.EXTRA_REPLACING, false)
                    ? PACKAGE_UPDATING : PACKAGE_TEMPORARY_CHANGE;
            mSomePackagesChanged = true;
            mSomePackagesChanged = true;
            if (pkgList != null) {
            if (pkgList != null) {
                onPackagesUnavailable(pkgList);
                onPackagesUnavailable(pkgList);
                for (int i=0; i<pkgList.length; i++) {
                for (int i=0; i<pkgList.length; i++) {
                    onPackageDisappeared(pkgList[i], PACKAGE_TEMPORARY_CHANGE);
                    onPackageDisappeared(pkgList[i], mChangeType);
                }
                }
            }
            }
        }
        }
+2 −2
Original line number Original line Diff line number Diff line
@@ -867,7 +867,7 @@ public class PackageManagerService extends IPackageManager.Stub {
                                    int[] uidArray = new int[] { res.pkg.applicationInfo.uid };
                                    int[] uidArray = new int[] { res.pkg.applicationInfo.uid };
                                    ArrayList<String> pkgList = new ArrayList<String>(1);
                                    ArrayList<String> pkgList = new ArrayList<String>(1);
                                    pkgList.add(res.pkg.applicationInfo.packageName);
                                    pkgList.add(res.pkg.applicationInfo.packageName);
                                    sendResourcesChangedBroadcast(true, false,
                                    sendResourcesChangedBroadcast(true, true,
                                            pkgList,uidArray, null);
                                            pkgList,uidArray, null);
                                }
                                }
                            }
                            }
@@ -11058,7 +11058,7 @@ public class PackageManagerService extends IPackageManager.Stub {
            if (uidArr != null) {
            if (uidArr != null) {
                extras.putIntArray(Intent.EXTRA_CHANGED_UID_LIST, uidArr);
                extras.putIntArray(Intent.EXTRA_CHANGED_UID_LIST, uidArr);
            }
            }
            if (replacing && !mediaStatus) {
            if (replacing) {
                extras.putBoolean(Intent.EXTRA_REPLACING, replacing);
                extras.putBoolean(Intent.EXTRA_REPLACING, replacing);
            }
            }
            String action = mediaStatus ? Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE
            String action = mediaStatus ? Intent.ACTION_EXTERNAL_APPLICATIONS_AVAILABLE