diff options
| author | Amith Yamasani <yamasani@google.com> | 2013-05-01 21:27:14 -0700 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2013-05-01 21:27:14 -0700 |
| commit | f5a553a4278a68fda9795dea759840d4f93546d7 (patch) | |
| tree | 1bd1b4391f199b8593afd2c790649b3f5500cc57 /core/java | |
| parent | f2930d783ac52d89cc8fc6db3bed7989544a9cbc (diff) | |
| parent | 55a08c5ab91014eb42ecdc9e7039c7bae1f00058 (diff) | |
| download | frameworks_base-f5a553a4278a68fda9795dea759840d4f93546d7.zip frameworks_base-f5a553a4278a68fda9795dea759840d4f93546d7.tar.gz frameworks_base-f5a553a4278a68fda9795dea759840d4f93546d7.tar.bz2 | |
am 55a08c5a: Merge "Allow requiredForAllUsers to work on updates to system apps" into jb-mr2-dev
* commit '55a08c5ab91014eb42ecdc9e7039c7bae1f00058':
Allow requiredForAllUsers to work on updates to system apps
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/content/RestrictionEntry.java | 3 | ||||
| -rw-r--r-- | core/java/android/content/pm/PackageParser.java | 16 |
2 files changed, 13 insertions, 6 deletions
diff --git a/core/java/android/content/RestrictionEntry.java b/core/java/android/content/RestrictionEntry.java index 217cf76..283a097 100644 --- a/core/java/android/content/RestrictionEntry.java +++ b/core/java/android/content/RestrictionEntry.java @@ -109,6 +109,7 @@ public class RestrictionEntry implements Parcelable { */ public RestrictionEntry(String key, String selectedString) { this.key = key; + this.type = TYPE_CHOICE; this.currentValue = selectedString; } @@ -119,6 +120,7 @@ public class RestrictionEntry implements Parcelable { */ public RestrictionEntry(String key, boolean selectedState) { this.key = key; + this.type = TYPE_BOOLEAN; setSelectedState(selectedState); } @@ -129,6 +131,7 @@ public class RestrictionEntry implements Parcelable { */ public RestrictionEntry(String key, String[] selectedStrings) { this.key = key; + this.type = TYPE_MULTI_SELECT; this.currentValues = selectedStrings; } diff --git a/core/java/android/content/pm/PackageParser.java b/core/java/android/content/pm/PackageParser.java index acb3725..34e0c12 100644 --- a/core/java/android/content/pm/PackageParser.java +++ b/core/java/android/content/pm/PackageParser.java @@ -287,7 +287,10 @@ public class PackageParser { pi.sharedUserLabel = p.mSharedUserLabel; pi.applicationInfo = generateApplicationInfo(p, flags, state, userId); pi.installLocation = p.installLocation; - pi.requiredForAllUsers = p.mRequiredForAllUsers; + if ((pi.applicationInfo.flags&ApplicationInfo.FLAG_SYSTEM) != 0 + || (pi.applicationInfo.flags&ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) { + pi.requiredForAllUsers = p.mRequiredForAllUsers; + } pi.restrictedAccountType = p.mRestrictedAccountType; pi.requiredAccountType = p.mRequiredAccountType; pi.firstInstallTime = firstInstallTime; @@ -1812,11 +1815,12 @@ public class PackageParser { false)) { ai.flags |= ApplicationInfo.FLAG_PERSISTENT; } - if (sa.getBoolean( - com.android.internal.R.styleable.AndroidManifestApplication_requiredForAllUsers, - false)) { - owner.mRequiredForAllUsers = true; - } + } + + if (sa.getBoolean( + com.android.internal.R.styleable.AndroidManifestApplication_requiredForAllUsers, + false)) { + owner.mRequiredForAllUsers = true; } String restrictedAccountType = sa.getString(com.android.internal.R.styleable |
