diff options
author | Kenny Root <kroot@google.com> | 2011-01-18 13:04:40 -0800 |
---|---|---|
committer | Kenny Root <kroot@google.com> | 2011-01-18 13:55:42 -0800 |
commit | 300c13a48132f03d48462b9cd3ec41331a71a411 (patch) | |
tree | b784943ca9d8e6988d9e0db62da448b8e9d10441 /services/java/com | |
parent | 26c1ab2e58f47ac94e638f69b9b626cc6b1925b6 (diff) | |
download | frameworks_base-300c13a48132f03d48462b9cd3ec41331a71a411.zip frameworks_base-300c13a48132f03d48462b9cd3ec41331a71a411.tar.gz frameworks_base-300c13a48132f03d48462b9cd3ec41331a71a411.tar.bz2 |
Erase OBB files when removing packages
OBB files on USB storage or SD card should be removed when an
application is removed.
Bug: 3356804
Change-Id: Ifbbf043368b125fcd47fd74e5cd2e5167a8deb00
Diffstat (limited to 'services/java/com')
-rw-r--r-- | services/java/com/android/server/PackageManagerService.java | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index 1eebd6a..059c0b8 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -4407,10 +4407,19 @@ class PackageManagerService extends IPackageManager.Stub { } } } - + + /** + * Check if the external storage media is available. This is true if there + * is a mounted external storage medium or if the external storage is + * emulated. + */ + private boolean isExternalMediaAvailable() { + return mMediaMounted || Environment.isExternalStorageEmulated(); + } + public String nextPackageToClean(String lastPackage) { synchronized (mPackages) { - if (!mMediaMounted) { + if (!isExternalMediaAvailable()) { // If the external storage is no longer mounted at this point, // the caller may not have been able to delete all of this // packages files and can not delete any more. Bail. @@ -4430,7 +4439,7 @@ class PackageManagerService extends IPackageManager.Stub { void startCleaningPackages() { synchronized (mPackages) { - if (!mMediaMounted) { + if (!isExternalMediaAvailable()) { return; } if (mSettings.mPackagesToBeCleaned.size() <= 0) { |