More memory updates

- Some string changes
 - Make processes in memory details not clickable
 - Put processes in a 'detail' category
 - Hide processes when an app only has 1
 - Add memory item to bottom of app info page

Bug: 20694769
Change-Id: Ifbe2205aeef230e44752d075578524249b30bdf8
This commit is contained in:
Jason Monk
2015-05-27 12:58:21 -04:00
parent ecf4339bc7
commit ab2046aa76
8 changed files with 113 additions and 17 deletions

View File

@@ -74,6 +74,8 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
private static final String KEY_FREQUENCY = "frequency";
private static final String KEY_MAX_USAGE = "max_usage";
private static final String KEY_PROCS = "processes";
private final ArrayMap<ComponentName, CancellablePreference> mServiceMap = new ArrayMap<>();
private PackageManager mPm;
@@ -92,6 +94,8 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
private double mTotalScale;
private PreferenceCategory mProcGroup;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
@@ -172,6 +176,7 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
private void createDetails() {
addPreferencesFromResource(R.xml.app_memory_settings);
mProcGroup = (PreferenceCategory) findPreference(KEY_PROCS);
fillProcessesSection();
LayoutPreference headerLayout = (LayoutPreference) findPreference(KEY_DETAILS_HEADER);
@@ -227,6 +232,7 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
};
private void fillProcessesSection() {
mProcGroup.removeAll();
final ArrayList<ProcStatsEntry> entries = new ArrayList<>();
for (int ie = 0; ie < mApp.mEntries.size(); ie++) {
ProcStatsEntry entry = mApp.mEntries.get(ie);
@@ -242,6 +248,7 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
ProcStatsEntry entry = entries.get(ie);
Preference processPref = new Preference(getActivity());
processPref.setTitle(entry.mLabel);
processPref.setSelectable(false);
long duration = Math.max(entry.mRunDuration, entry.mBgDuration);
long memoryUse = Math.max((long) (entry.mRunWeight * mWeightToRam),
@@ -251,7 +258,10 @@ public class ProcessStatsDetail extends SettingsPreferenceFragment {
/ (float) mTotalTime, getActivity());
processPref.setSummary(
getString(R.string.memory_use_running_format, memoryString, frequency));
getPreferenceScreen().addPreference(processPref);
mProcGroup.addPreference(processPref);
}
if (mProcGroup.getPreferenceCount() < 2) {
getPreferenceScreen().removePreference(mProcGroup);
}
}