OSDN Git Service

Merge "Clearing cache for managed profile apps" into nyc-dev
authorTreeHugger Robot <treehugger-gerrit@google.com>
Wed, 13 Apr 2016 03:13:47 +0000 (03:13 +0000)
committerAndroid (Google) Code Review <android-gerrit@google.com>
Wed, 13 Apr 2016 03:13:48 +0000 (03:13 +0000)
src/com/android/settings/deviceinfo/PrivateVolumeSettings.java

index a19b5b8..5f5975d 100644 (file)
@@ -725,11 +725,16 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
                 public void onClick(DialogInterface dialog, int which) {
                     final PrivateVolumeSettings target = (PrivateVolumeSettings) getTargetFragment();
                     final PackageManager pm = context.getPackageManager();
-                    final List<PackageInfo> infos = pm.getInstalledPackages(0);
-                    final ClearCacheObserver observer = new ClearCacheObserver(
-                            target, infos.size());
-                    for (PackageInfo info : infos) {
-                        pm.deleteApplicationCacheFiles(info.packageName, observer);
+                    final UserManager um = context.getSystemService(UserManager.class);
+
+                    for (int userId : um.getProfileIdsWithDisabled(context.getUserId())) {
+                        final List<PackageInfo> infos = pm.getInstalledPackagesAsUser(0, userId);
+                        final ClearCacheObserver observer = new ClearCacheObserver(
+                                target, infos.size());
+                        for (PackageInfo info : infos) {
+                            pm.deleteApplicationCacheFilesAsUser(info.packageName, userId,
+                                    observer);
+                        }
                     }
                 }
             });