diff options
6 files changed, 6 insertions, 107 deletions
diff --git a/core/java/android/app/ApplicationContext.java b/core/java/android/app/ApplicationContext.java index 3ed2893..1666588 100644 --- a/core/java/android/app/ApplicationContext.java +++ b/core/java/android/app/ApplicationContext.java @@ -2374,22 +2374,13 @@ class ApplicationContext extends Context { } @Override - public void freeStorage(long freeStorageSize, PendingIntent pi) { + public void freeStorage(long freeStorageSize, IntentSender pi) { try { mPM.freeStorage(freeStorageSize, pi); } catch (RemoteException e) { // Should never happen! } } - - @Override - public void freeStorageWithIntent(long freeStorageSize, IntentSender pi) { - try { - mPM.freeStorageWithIntent(freeStorageSize, pi); - } catch (RemoteException e) { - // Should never happen! - } - } @Override public void getPackageSizeInfo(String packageName, diff --git a/core/java/android/content/pm/IPackageManager.aidl b/core/java/android/content/pm/IPackageManager.aidl index b6fc078..68f8417 100644 --- a/core/java/android/content/pm/IPackageManager.aidl +++ b/core/java/android/content/pm/IPackageManager.aidl @@ -34,7 +34,6 @@ import android.content.pm.PermissionInfo; import android.content.pm.ResolveInfo; import android.content.pm.ServiceInfo; import android.net.Uri; -import android.app.PendingIntent; import android.content.IntentSender; /** @@ -236,35 +235,11 @@ interface IPackageManager { * and the current free storage is YY, * if XX is less than YY, just return. if not free XX-YY number * of bytes if possible. - * @param opFinishedIntent PendingIntent call back used to - * notify when the operation is completed.May be null - * to indicate that no call back is desired. - */ - void freeStorage(in long freeStorageSize, - in PendingIntent opFinishedIntent); - - /** - * Free storage by deleting LRU sorted list of cache files across - * all applications. If the currently available free storage - * on the device is greater than or equal to the requested - * free storage, no cache files are cleared. If the currently - * available storage on the device is less than the requested - * free storage, some or all of the cache files across - * all applications are deleted (based on last accessed time) - * to increase the free storage space on the device to - * the requested value. There is no guarantee that clearing all - * the cache files from all applications will clear up - * enough storage to achieve the desired value. - * @param freeStorageSize The number of bytes of storage to be - * freed by the system. Say if freeStorageSize is XX, - * and the current free storage is YY, - * if XX is less than YY, just return. if not free XX-YY number - * of bytes if possible. * @param pi IntentSender call back used to * notify when the operation is completed.May be null * to indicate that no call back is desired. */ - void freeStorageWithIntent(in long freeStorageSize, + void freeStorage(in long freeStorageSize, in IntentSender pi); /** diff --git a/core/java/android/content/pm/PackageManager.java b/core/java/android/content/pm/PackageManager.java index 81e2112..3250a87 100644 --- a/core/java/android/content/pm/PackageManager.java +++ b/core/java/android/content/pm/PackageManager.java @@ -16,8 +16,6 @@ package android.content.pm; - -import android.app.PendingIntent; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -1516,40 +1514,13 @@ public abstract class PackageManager { * and the current free storage is YY, * if XX is less than YY, just return. if not free XX-YY number * of bytes if possible. - * @param opFinishedIntent PendingIntent call back used to - * notify when the operation is completed.May be null - * to indicate that no call back is desired. - * - * @deprecated - * @hide - */ - @Deprecated - public abstract void freeStorage(long freeStorageSize, PendingIntent opFinishedIntent); - - /** - * Free storage by deleting LRU sorted list of cache files across - * all applications. If the currently available free storage - * on the device is greater than or equal to the requested - * free storage, no cache files are cleared. If the currently - * available storage on the device is less than the requested - * free storage, some or all of the cache files across - * all applications are deleted (based on last accessed time) - * to increase the free storage space on the device to - * the requested value. There is no guarantee that clearing all - * the cache files from all applications will clear up - * enough storage to achieve the desired value. - * @param freeStorageSize The number of bytes of storage to be - * freed by the system. Say if freeStorageSize is XX, - * and the current free storage is YY, - * if XX is less than YY, just return. if not free XX-YY number - * of bytes if possible. * @param pi IntentSender call back used to * notify when the operation is completed.May be null * to indicate that no call back is desired. * * @hide */ - public abstract void freeStorageWithIntent(long freeStorageSize, IntentSender pi); + public abstract void freeStorage(long freeStorageSize, IntentSender pi); /** * Retrieve the size information for a package. diff --git a/services/java/com/android/server/PackageManagerService.java b/services/java/com/android/server/PackageManagerService.java index 1f12411..4b583e4 100644 --- a/services/java/com/android/server/PackageManagerService.java +++ b/services/java/com/android/server/PackageManagerService.java @@ -26,8 +26,6 @@ import org.xmlpull.v1.XmlSerializer; import android.app.ActivityManagerNative; import android.app.IActivityManager; -import android.app.PendingIntent; -import android.app.PendingIntent.CanceledException; import android.content.ComponentName; import android.content.Context; import android.content.Intent; @@ -936,33 +934,7 @@ class PackageManagerService extends IPackageManager.Stub { }); } - public void freeStorage(final long freeStorageSize, final PendingIntent opFinishedIntent) { - mContext.enforceCallingOrSelfPermission( - android.Manifest.permission.CLEAR_APP_CACHE, null); - // Queue up an async operation since clearing cache may take a little while. - mHandler.post(new Runnable() { - public void run() { - mHandler.removeCallbacks(this); - int retCode = -1; - if (mInstaller != null) { - retCode = mInstaller.freeCache(freeStorageSize); - if (retCode < 0) { - Log.w(TAG, "Couldn't clear application caches"); - } - } - if(opFinishedIntent != null) { - try { - // Callback via pending intent - opFinishedIntent.send((retCode >= 0) ? 1 : 0); - } catch (CanceledException e1) { - Log.i(TAG, "Failed to send pending intent"); - } - } - } - }); - } - - public void freeStorageWithIntent(final long freeStorageSize, final IntentSender pi) { + public void freeStorage(final long freeStorageSize, final IntentSender pi) { mContext.enforceCallingOrSelfPermission( android.Manifest.permission.CLEAR_APP_CACHE, null); // Queue up an async operation since clearing cache may take a little while. diff --git a/test-runner/android/test/mock/MockPackageManager.java b/test-runner/android/test/mock/MockPackageManager.java index a9c2657..63a177e 100644 --- a/test-runner/android/test/mock/MockPackageManager.java +++ b/test-runner/android/test/mock/MockPackageManager.java @@ -16,7 +16,6 @@ package android.test.mock; -import android.app.PendingIntent; import android.content.ComponentName; import android.content.Intent; import android.content.IntentFilter; @@ -324,21 +323,12 @@ public class MockPackageManager extends PackageManager { long idealStorageSize, IPackageDataObserver observer) { throw new UnsupportedOperationException(); } - - /** - * @hide - to match hiding in superclass - */ - @Override - public void freeStorage( - long idealStorageSize, PendingIntent onFinishedIntent) { - throw new UnsupportedOperationException(); - } /** * @hide - to match hiding in superclass */ @Override - public void freeStorageWithIntent( + public void freeStorage( long idealStorageSize, IntentSender pi) { throw new UnsupportedOperationException(); } diff --git a/tests/AndroidTests/src/com/android/unit_tests/AppCacheTest.java b/tests/AndroidTests/src/com/android/unit_tests/AppCacheTest.java index 3daa8ab..fb1b9ad 100755 --- a/tests/AndroidTests/src/com/android/unit_tests/AppCacheTest.java +++ b/tests/AndroidTests/src/com/android/unit_tests/AppCacheTest.java @@ -507,7 +507,7 @@ public class AppCacheTest extends AndroidTestCase { try { // Spin lock waiting for call back synchronized(r) { - getPm().freeStorage(idealStorageSize, pi); + getPm().freeStorage(idealStorageSize, pi.getIntentSender()); long waitTime = 0; while(!r.isDone() && (waitTime < MAX_WAIT_TIME)) { r.wait(WAIT_TIME_INCR); |