summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorChristopher Tate <ctate@google.com>2015-09-02 20:57:28 +0000
committerAndroid Git Automerger <android-git-automerger@android.com>2015-09-02 20:57:28 +0000
commit7bae31f88f8dcaf8114d9d43b29e154bc23374ad (patch)
treeb3a14747799ee2cbb286790a1524247232562228 /services
parent304e3772273cd39ae55fbdc1c453d8fa50258670 (diff)
parent60aae166e99dff0dba379e14c0fc43e89fd1a018 (diff)
downloadframeworks_base-7bae31f88f8dcaf8114d9d43b29e154bc23374ad.zip
frameworks_base-7bae31f88f8dcaf8114d9d43b29e154bc23374ad.tar.gz
frameworks_base-7bae31f88f8dcaf8114d9d43b29e154bc23374ad.tar.bz2
am 60aae166: Apply default link-handling policy at OTA from pre-M
* commit '60aae166e99dff0dba379e14c0fc43e89fd1a018': Apply default link-handling policy at OTA from pre-M
Diffstat (limited to 'services')
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java22
1 files changed, 13 insertions, 9 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 7112fc8..886c100 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -2283,16 +2283,16 @@ public class PackageManagerService extends IPackageManager.Stub {
}
updatePermissionsLPw(null, null, updateFlags);
ver.sdkVersion = mSdkVersion;
- // clear only after permissions have been updated
- mExistingSystemPackages.clear();
- mPromoteSystemApps = false;
- // If this is the first boot, and it is a normal boot, then
- // we need to initialize the default preferred apps.
- if (!mRestoredSettings && !onlyCore) {
- mSettings.applyDefaultPreferredAppsLPw(this, UserHandle.USER_OWNER);
- applyFactoryDefaultBrowserLPw(UserHandle.USER_OWNER);
- primeDomainVerificationsLPw(UserHandle.USER_OWNER);
+ // If this is the first boot or an update from pre-M, and it is a normal
+ // boot, then we need to initialize the default preferred apps across
+ // all defined users.
+ if (!onlyCore && (mPromoteSystemApps || !mRestoredSettings)) {
+ for (UserInfo user : sUserManager.getUsers(true)) {
+ mSettings.applyDefaultPreferredAppsLPw(this, user.id);
+ applyFactoryDefaultBrowserLPw(user.id);
+ primeDomainVerificationsLPw(user.id);
+ }
}
// If this is first boot after an OTA, and a normal boot, then
@@ -2310,6 +2310,10 @@ public class PackageManagerService extends IPackageManager.Stub {
checkDefaultBrowser();
+ // clear only after permissions and other defaults have been updated
+ mExistingSystemPackages.clear();
+ mPromoteSystemApps = false;
+
// All the changes are done during package scanning.
ver.databaseVersion = Settings.CURRENT_DATABASE_VERSION;