diff options
author | Dianne Hackborn <hackbod@google.com> | 2010-02-11 15:57:09 -0800 |
---|---|---|
committer | Dianne Hackborn <hackbod@google.com> | 2010-02-11 20:02:20 -0800 |
commit | 470969346d7958f859d97d1a136b4ecc11e2a464 (patch) | |
tree | c9c1ec33c9b3dd2463ffa4b7704cd87e1a12ca9c /core/java/android/content/pm | |
parent | b509065a586d11e6800373d0a57f5296428f2d89 (diff) | |
download | frameworks_base-470969346d7958f859d97d1a136b4ecc11e2a464.zip frameworks_base-470969346d7958f859d97d1a136b4ecc11e2a464.tar.gz frameworks_base-470969346d7958f859d97d1a136b4ecc11e2a464.tar.bz2 |
Add APIs for mapping between new and current package names.
This will allow Market and others to find out what the "real" name
of a package is, when it is currently running under the old name of
a previously installed version.
Diffstat (limited to 'core/java/android/content/pm')
-rw-r--r-- | core/java/android/content/pm/IPackageManager.aidl | 3 | ||||
-rw-r--r-- | core/java/android/content/pm/PackageManager.java | 17 |
2 files changed, 20 insertions, 0 deletions
diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl index 2c8c112..47789a5 100644 --- a/core/java/android/content/pm/IPackageManager.aidl +++ b/core/java/android/content/pm/IPackageManager.aidl @@ -47,6 +47,9 @@ interface IPackageManager { PackageInfo getPackageInfo(String packageName, int flags); int getPackageUid(String packageName); int[] getPackageGids(String packageName); + + String[] currentToCanonicalPackageNames(in String[] names); + String[] canonicalToCurrentPackageNames(in String[] names); PermissionInfo getPermissionInfo(String name, int flags); diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index a61eab9..17bee48 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -691,6 +691,23 @@ public abstract class PackageManager { throws NameNotFoundException; /** + * Map from the current package names in use on the device to whatever + * the current canonical name of that package is. + * @param names Array of current names to be mapped. + * @return Returns an array of the same size as the original, containing + * the canonical name for each package. + */ + public abstract String[] currentToCanonicalPackageNames(String[] names); + + /** + * Map from a packages canonical name to the current name in use on the device. + * @param names Array of new names to be mapped. + * @return Returns an array of the same size as the original, containing + * the current name for each package. + */ + public abstract String[] canonicalToCurrentPackageNames(String[] names); + + /** * Return a "good" intent to launch a front-door activity in a package, * for use for example to implement an "open" button when browsing through * packages. The current implementation will look first for a main |