diff --git a/api/current.xml b/api/current.xml index a60c3a1fb8c31..1dbe58f58e236 100644 --- a/api/current.xml +++ b/api/current.xml @@ -976,7 +976,7 @@ value=""android.permission.SET_PREFERRED_APPLICATIONS"" static="true" final="true" - deprecated="not deprecated" + deprecated="deprecated" visibility="public" > @@ -41097,7 +41097,7 @@ synchronized="false" static="false" final="false" - deprecated="not deprecated" + deprecated="deprecated" visibility="public" > @@ -41850,7 +41850,7 @@ synchronized="false" static="false" final="false" - deprecated="not deprecated" + deprecated="deprecated" visibility="public" > diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index e2030bef4d85b..03d2a6d1d0589 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -1656,21 +1656,19 @@ public abstract class PackageManager { IPackageStatsObserver observer); /** - * Add a new package to the list of preferred packages. This new package - * will be added to the front of the list (removed from its current location - * if already listed), meaning it will now be preferred over all other - * packages when resolving conflicts. - * - * @param packageName The package name of the new package to make preferred. + * @deprecated This function no longer does anything; it was an old + * approach to managing preferred activities, which has been superceeded + * (and conflicts with) the modern activity-based preferences. */ + @Deprecated public abstract void addPackageToPreferred(String packageName); /** - * Remove a package from the list of preferred packages. If it was on - * the list, it will no longer be preferred over other packages. - * - * @param packageName The package name to remove. + * @deprecated This function no longer does anything; it was an old + * approach to managing preferred activities, which has been superceeded + * (and conflicts with) the modern activity-based preferences. */ + @Deprecated public abstract void removePackageFromPreferred(String packageName); /** diff --git a/core/res/AndroidManifest.xml b/core/res/AndroidManifest.xml index 1c3cf3c8cac06..0d03ff2b28fdb 100644 --- a/core/res/AndroidManifest.xml +++ b/core/res/AndroidManifest.xml @@ -597,11 +597,9 @@ android:label="@string/permlab_getPackageSize" android:description="@string/permdesc_getPackageSize" /> - + 0) { - mSettings.mPreferredPackages.remove(pkg); - pkg.mPreferredOrder = 0; - updatePreferredIndicesLP(); - } - clearPackagePreferredActivitiesLP(pkg.packageName); mPackages.remove(pkg.applicationInfo.packageName); @@ -4938,62 +4932,17 @@ class PackageManagerService extends IPackageManager.Stub { public void addPackageToPreferred(String packageName) { mContext.enforceCallingOrSelfPermission( android.Manifest.permission.SET_PREFERRED_APPLICATIONS, null); - - synchronized (mPackages) { - PackageParser.Package p = mPackages.get(packageName); - if (p == null) { - return; - } - PackageSetting ps = (PackageSetting)p.mExtras; - if (ps != null) { - mSettings.mPreferredPackages.remove(ps); - mSettings.mPreferredPackages.add(0, ps); - updatePreferredIndicesLP(); - mSettings.writeLP(); - } - } + Log.w(TAG, "addPackageToPreferred: no longer implemented"); } public void removePackageFromPreferred(String packageName) { mContext.enforceCallingOrSelfPermission( android.Manifest.permission.SET_PREFERRED_APPLICATIONS, null); - - synchronized (mPackages) { - PackageParser.Package p = mPackages.get(packageName); - if (p == null) { - return; - } - if (p.mPreferredOrder > 0) { - PackageSetting ps = (PackageSetting)p.mExtras; - if (ps != null) { - mSettings.mPreferredPackages.remove(ps); - p.mPreferredOrder = 0; - updatePreferredIndicesLP(); - mSettings.writeLP(); - } - } - } - } - - private void updatePreferredIndicesLP() { - final ArrayList pkgs - = mSettings.mPreferredPackages; - final int N = pkgs.size(); - for (int i=0; i getPreferredPackages(int flags) { - synchronized (mPackages) { - final ArrayList res = new ArrayList(); - final ArrayList pref = mSettings.mPreferredPackages; - final int N = pref.size(); - for (int i=0; i(); } public void addPreferredActivity(IntentFilter filter, int match, @@ -5307,13 +5256,6 @@ class PackageManagerService extends IPackageManager.Stub { pw.println("Preferred Activities:"); mSettings.mPreferredActivities.dump(pw, " "); pw.println(" "); - pw.println("Preferred Packages:"); - { - for (PackageSetting ps : mSettings.mPreferredPackages) { - pw.print(" "); pw.println(ps.name); - } - } - pw.println(" "); pw.println("Permissions:"); { for (BasePermission p : mSettings.mPermissions.values()) { @@ -6064,10 +6006,6 @@ class PackageManagerService extends IPackageManager.Stub { private final File mBackupSettingsFilename; private final HashMap mPackages = new HashMap(); - // The user's preferred packages/applications, in order of preference. - // First is the most preferred. - private final ArrayList mPreferredPackages = - new ArrayList(); // List of replaced system applications final HashMap mDisabledSysPackages = new HashMap(); @@ -6112,9 +6050,6 @@ class PackageManagerService extends IPackageManager.Stub { final HashMap mPermissionTrees = new HashMap(); - private final ArrayList mPendingPreferredPackages - = new ArrayList(); - private final StringBuilder mReadMessages = new StringBuilder(); private static final class PendingPackage extends PackageSettingBase { @@ -6598,16 +6533,6 @@ class PackageManagerService extends IPackageManager.Stub { writeDisabledSysPackage(serializer, pkg); } - serializer.startTag(null, "preferred-packages"); - int N = mPreferredPackages.size(); - for (int i=0; i outerDepth)) { - if (type == XmlPullParser.END_TAG - || type == XmlPullParser.TEXT) { - continue; - } - - String tagName = parser.getName(); - if (tagName.equals("item")) { - String name = parser.getAttributeValue(null, "name"); - if (name != null) { - mPendingPreferredPackages.add(name); - } else { - reportSettingsProblem(Log.WARN, - "Error in package manager settings: has no name at " - + parser.getPositionDescription()); - } - } else { - reportSettingsProblem(Log.WARN, - "Unknown element under : " - + parser.getName()); - } - XmlUtils.skipCurrentTag(parser); - } - } - private void readPreferredActivitiesLP(XmlPullParser parser) throws XmlPullParserException, IOException { int outerDepth = parser.getDepth();