diff options
author | Evan Severson <evanseverson@google.com> | 2019-10-17 12:38:13 -0700 |
---|---|---|
committer | Evan Severson <evanseverson@google.com> | 2019-10-28 09:48:34 -0700 |
commit | 4044831837cb3401e262db3614ac41fb343aebf4 (patch) | |
tree | 1075ad5b7209499ec6e837bff3f2bd645fe8ff1d /packages/PackageInstaller/src | |
parent | 3e65b9267e0ff058cbc7ab5e1e199af48f9c6555 (diff) |
Use ApplicationInfo.storageUuid
Test: Uninstall some apps & verify with partner
Fixes: 142856192
Change-Id: I061c52a8681a4dac42e9ce3751a8109aa3e0e60d
Diffstat (limited to 'packages/PackageInstaller/src')
-rw-r--r-- | packages/PackageInstaller/src/com/android/packageinstaller/handheld/UninstallAlertDialogFragment.java | 30 |
1 files changed, 8 insertions, 22 deletions
diff --git a/packages/PackageInstaller/src/com/android/packageinstaller/handheld/UninstallAlertDialogFragment.java b/packages/PackageInstaller/src/com/android/packageinstaller/handheld/UninstallAlertDialogFragment.java index 0a37cc6cb6ca..99f6a92206b9 100644 --- a/packages/PackageInstaller/src/com/android/packageinstaller/handheld/UninstallAlertDialogFragment.java +++ b/packages/PackageInstaller/src/com/android/packageinstaller/handheld/UninstallAlertDialogFragment.java @@ -16,7 +16,6 @@ package com.android.packageinstaller.handheld; -import static android.os.storage.StorageManager.convert; import static android.text.format.Formatter.formatFileSize; import android.annotation.NonNull; @@ -34,8 +33,6 @@ import android.content.pm.UserInfo; import android.os.Bundle; import android.os.UserHandle; import android.os.UserManager; -import android.os.storage.StorageManager; -import android.os.storage.StorageVolume; import android.util.Log; import android.view.LayoutInflater; import android.view.View; @@ -64,29 +61,18 @@ public class UninstallAlertDialogFragment extends DialogFragment implements * @return The number of bytes. */ private long getAppDataSizeForUser(@NonNull String pkg, @NonNull UserHandle user) { - StorageManager storageManager = getContext().getSystemService(StorageManager.class); StorageStatsManager storageStatsManager = getContext().getSystemService(StorageStatsManager.class); - - List<StorageVolume> volumes = storageManager.getStorageVolumes(); - long appDataSize = 0; - - int numVolumes = volumes.size(); - for (int i = 0; i < numVolumes; i++) { - StorageStats stats; - try { - stats = storageStatsManager.queryStatsForPackage(convert(volumes.get(i).getUuid()), - pkg, user); - } catch (PackageManager.NameNotFoundException | IOException e) { - Log.e(LOG_TAG, "Cannot determine amount of app data for " + pkg + " on " - + volumes.get(i) + " (user " + user + ")", e); - continue; - } - - appDataSize += stats.getDataBytes(); + try { + StorageStats stats = storageStatsManager.queryStatsForPackage( + getContext().getPackageManager().getApplicationInfo(pkg, 0).storageUuid, + pkg, user); + return stats.getDataBytes(); + } catch (PackageManager.NameNotFoundException | IOException e) { + Log.e(LOG_TAG, "Cannot determine amount of app data for " + pkg, e); } - return appDataSize; + return 0; } /** |