Merge "Wipe the application cache selectively" into jb-dev

This commit is contained in:
Jean Chalard 2012-05-25 04:07:46 -07:00 committed by Android (Google) Code Review
commit 123017cc74
2 changed files with 5 additions and 1 deletions

View file

@ -51,6 +51,8 @@ public class DictionaryPackInstallBroadcastReceiver extends BroadcastReceiver {
if (null == packageUri) return; // No package name : we can't do anything if (null == packageUri) return; // No package name : we can't do anything
final String packageName = packageUri.getSchemeSpecificPart(); final String packageName = packageUri.getSchemeSpecificPart();
if (null == packageName) return; if (null == packageName) return;
// TODO: do this in a more appropriate place
TargetApplicationGetter.removeApplicationInfoCache(packageName);
final PackageInfo packageInfo; final PackageInfo packageInfo;
try { try {
packageInfo = manager.getPackageInfo(packageName, PackageManager.GET_PROVIDERS); packageInfo = manager.getPackageInfo(packageName, PackageManager.GET_PROVIDERS);

View file

@ -31,7 +31,9 @@ public class TargetApplicationGetter extends AsyncTask<String, Void, Application
public static ApplicationInfo getCachedApplicationInfo(final String packageName) { public static ApplicationInfo getCachedApplicationInfo(final String packageName) {
return sCache.get(packageName); return sCache.get(packageName);
} }
// TODO: Wipe the cache when new packages are installed. public static void removeApplicationInfoCache(final String packageName) {
sCache.remove(packageName);
}
public interface OnTargetApplicationKnownListener { public interface OnTargetApplicationKnownListener {
public void onTargetApplicationKnown(final ApplicationInfo info); public void onTargetApplicationKnown(final ApplicationInfo info);