diff options
Diffstat (limited to 'packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java')
-rw-r--r-- | packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java b/packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java index a28b8a4..b36bd55 100644 --- a/packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java +++ b/packages/DefaultContainerService/src/com/android/defcontainer/DefaultContainerService.java @@ -26,6 +26,7 @@ import android.content.pm.MacAuthenticatedInputStream; import android.content.pm.ContainerEncryptionParams; import android.content.pm.IPackageManager; import android.content.pm.LimitedLengthInputStream; +import android.content.pm.PackageCleanItem; import android.content.pm.PackageInfo; import android.content.pm.PackageInfoLite; import android.content.pm.PackageManager; @@ -181,6 +182,7 @@ public class DefaultContainerService extends IntentService { } ret.packageName = pkg.packageName; + ret.versionCode = pkg.versionCode; ret.installLocation = pkg.installLocation; ret.verifiers = pkg.verifiers; @@ -268,12 +270,14 @@ public class DefaultContainerService extends IntentService { if (PackageManager.ACTION_CLEAN_EXTERNAL_STORAGE.equals(intent.getAction())) { IPackageManager pm = IPackageManager.Stub.asInterface( ServiceManager.getService("package")); - String pkg = null; + PackageCleanItem pkg = null; try { while ((pkg=pm.nextPackageToClean(pkg)) != null) { - eraseFiles(Environment.getExternalStorageAppDataDirectory(pkg)); - eraseFiles(Environment.getExternalStorageAppMediaDirectory(pkg)); - eraseFiles(Environment.getExternalStorageAppObbDirectory(pkg)); + eraseFiles(Environment.getExternalStorageAppDataDirectory(pkg.packageName)); + eraseFiles(Environment.getExternalStorageAppMediaDirectory(pkg.packageName)); + if (pkg.andCode) { + eraseFiles(Environment.getExternalStorageAppObbDirectory(pkg.packageName)); + } } } catch (RemoteException e) { } |