From e82e89ef9033f02489503196df6da0654ae007be Mon Sep 17 00:00:00 2001 From: "hj.seo" Date: Wed, 20 Dec 2017 09:39:47 +0900 Subject: [PATCH] Modify getting of primary storage size Settings application shows internal storage size using API getTotalBytes in StorageStatsManager. This API calls getPrimaryStorageSize() in StorageManager. getPrimaryStorageSize() returns /data parition size calculated API roundStorageSize() in FileUtils. Using this API, total primary storage size returns 8GB if 16GB emmc size device has /data partition size below 8GB. So we should modify getting of primary storage size close to real emmc size. getPrimaryStorageSize() will be calculated sum of /data and /system partition size. Test: Check primary storage size in Settings application Change-Id: I3ad33534b1c55d09afbb0e9be1c408c02c442842 Signed-off-by: hj.seo --- core/java/android/os/storage/StorageManager.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/core/java/android/os/storage/StorageManager.java b/core/java/android/os/storage/StorageManager.java index 8533c7efad84d..18f3a14694cc3 100644 --- a/core/java/android/os/storage/StorageManager.java +++ b/core/java/android/os/storage/StorageManager.java @@ -1083,12 +1083,14 @@ public class StorageManager { /** {@hide} */ public static Pair getPrimaryStoragePathAndSize() { return Pair.create(null, - FileUtils.roundStorageSize(Environment.getDataDirectory().getTotalSpace())); + FileUtils.roundStorageSize(Environment.getDataDirectory().getTotalSpace() + + Environment.getRootDirectory().getTotalSpace())); } /** {@hide} */ public long getPrimaryStorageSize() { - return FileUtils.roundStorageSize(Environment.getDataDirectory().getTotalSpace()); + return FileUtils.roundStorageSize(Environment.getDataDirectory().getTotalSpace() + + Environment.getRootDirectory().getTotalSpace()); } /** @removed */