From cd4428ce2c03fd355a3093fad6553636da9cef9b Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Tue, 12 Jun 2012 17:13:12 -0700 Subject: [PATCH] Storage banner when device in low disk state. Bug: 6576409 Change-Id: I25f71935e312bf6efa832d10c22e3edbdc18f4fb --- res/values/strings.xml | 7 ++++++- .../StorageVolumePreferenceCategory.java | 19 +++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) diff --git a/res/values/strings.xml b/res/values/strings.xml index 334c4d43528..80a241517c3 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -1848,7 +1848,7 @@ Calculating\u2026 - Apps + Apps (app data & media content) Media @@ -1918,6 +1918,11 @@ Unmount in progress + + Storage space is running out + + Some system functions, such as syncing, may not work correctly. Try to free space by deleting or unpinning items, such as apps or media content. + USB computer connection diff --git a/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java b/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java index bbf1d0175ce..0211c775388 100644 --- a/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java +++ b/src/com/android/settings/deviceinfo/StorageVolumePreferenceCategory.java @@ -16,9 +16,11 @@ package com.android.settings.deviceinfo; +import android.app.ActivityThread; import android.app.DownloadManager; import android.content.Context; import android.content.Intent; +import android.content.pm.IPackageManager; import android.content.res.Resources; import android.graphics.drawable.ShapeDrawable; import android.graphics.drawable.shapes.RectShape; @@ -26,6 +28,7 @@ import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.os.Message; +import android.os.RemoteException; import android.os.storage.StorageManager; import android.os.storage.StorageVolume; import android.preference.Preference; @@ -53,6 +56,7 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen private Preference[] mPreferences; private Preference mMountTogglePreference; private Preference mFormatPreference; + private Preference mStorageLow; private int[] mColors; private Resources mResources; @@ -204,6 +208,18 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen mFormatPreference.setTitle(R.string.sd_format); mFormatPreference.setSummary(R.string.sd_format_summary); } + + final IPackageManager pm = ActivityThread.getPackageManager(); + try { + if (pm.isStorageLow()) { + mStorageLow = new Preference(getContext()); + mStorageLow.setTitle(R.string.storage_low_title); + mStorageLow.setSummary(R.string.storage_low_summary); + } else { + mStorageLow = null; + } + } catch (RemoteException e) { + } } public StorageVolume getStorageVolume() { @@ -227,6 +243,9 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen } addPreference(mUsageBarPreference); + if (mStorageLow != null) { + addPreference(mStorageLow); + } for (int i = 0; i < numberOfCategories; i++) { addPreference(mPreferences[i]); }