diff options
| author | 2016-10-27 19:09:23 +0000 | |
|---|---|---|
| committer | 2016-10-27 19:09:26 +0000 | |
| commit | 4452e751d41e19ec153acee01518e5a70b49e57e (patch) | |
| tree | 8068b5cf3a7121a37a8b68da0aeadaad20a9d2eb | |
| parent | a5c859c0807154fdbe696bca4214641bb6f3177e (diff) | |
| parent | 281389ac5475e483d10a2e8aa31195b9e9875246 (diff) | |
Merge "Dumps total size of primary storage."
| -rw-r--r-- | core/java/android/os/storage/StorageManager.java | 18 | ||||
| -rw-r--r-- | services/core/java/com/android/server/MountService.java | 14 |
2 files changed, 27 insertions, 5 deletions
diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java index 1a78fe7bd5ba..ebed26fded76 100644 --- a/core/java/android/os/storage/StorageManager.java +++ b/core/java/android/os/storage/StorageManager.java @@ -41,6 +41,7 @@ import android.os.UserHandle; import android.provider.Settings; import android.text.TextUtils; import android.util.Log; +import android.util.Pair; import android.util.Slog; import android.util.SparseArray; @@ -929,22 +930,29 @@ public class StorageManager { } /** {@hide} */ - public long getPrimaryStorageSize() { + public static Pair<String, Long> getPrimaryStoragePathAndSize() { for (String path : INTERNAL_STORAGE_SIZE_PATHS) { final long numberBlocks = readLong(path); if (numberBlocks > 0) { - return numberBlocks * INTERNAL_STORAGE_SECTOR_SIZE; + return new Pair<>(path, Long.valueOf(numberBlocks * INTERNAL_STORAGE_SECTOR_SIZE)); } } - return 0; + return null; + } + + + /** {@hide} */ + public long getPrimaryStorageSize() { + final Pair<String, Long> pair = getPrimaryStoragePathAndSize(); + return pair == null ? 0 : pair.second.longValue(); } - private long readLong(String path) { + private static long readLong(String path) { try (final FileInputStream fis = new FileInputStream(path); final BufferedReader reader = new BufferedReader(new InputStreamReader(fis));) { return Long.parseLong(reader.readLine()); } catch (Exception e) { - Slog.w(TAG, "Could not read " + path, e); + Slog.w(TAG, "readLong(): could not read " + path + ": " + e); return 0; } } diff --git a/services/core/java/com/android/server/MountService.java b/services/core/java/com/android/server/MountService.java index b9a483138520..4cc293125bcc 100644 --- a/services/core/java/com/android/server/MountService.java +++ b/services/core/java/com/android/server/MountService.java @@ -46,6 +46,7 @@ import android.content.pm.ProviderInfo; import android.content.pm.UserInfo; import android.content.res.Configuration; import android.content.res.ObbInfo; +import android.net.TrafficStats; import android.net.Uri; import android.os.Binder; import android.os.DropBoxManager; @@ -86,6 +87,7 @@ import android.text.format.DateUtils; import android.util.ArrayMap; import android.util.AtomicFile; import android.util.Log; +import android.util.Pair; import android.util.Slog; import android.util.TimeUtils; import android.util.Xml; @@ -3738,6 +3740,18 @@ class MountService extends IMountService.Stub pw.println(); pw.println("Primary storage UUID: " + mPrimaryStorageUuid); + final Pair<String, Long> pair = StorageManager.getPrimaryStoragePathAndSize(); + if (pair == null) { + pw.println("Internal storage total size: N/A"); + } else { + pw.print("Internal storage ("); + pw.print(pair.first); + pw.print(") total size: "); + pw.print(pair.second); + pw.print(" ("); + pw.print((float) pair.second / TrafficStats.GB_IN_BYTES); + pw.println(" GB)"); + } pw.println("Force adoptable: " + mForceAdoptable); pw.println(); pw.println("Local unlocked users: " + Arrays.toString(mLocalUnlockedUsers)); |