Loading AndroidManifest.xml +0 −4 Original line number Diff line number Diff line Loading @@ -1031,10 +1031,6 @@ <intent-filter android:priority="3"> <action android:name="com.android.settings.action.SETTINGS" /> </intent-filter> <meta-data android:name="com.android.settings.category" android:value="com.android.settings.category.ia.development" /> <meta-data android:name="com.android.settings.summary" android:resource="@string/summary_empty" /> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.applications.ProcessStatsSummary" /> </activity> Loading res/xml/development_prefs.xml +8 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,14 @@ xmlns:settings="http://schemas.android.com/apk/res/com.android.settings" android:key="development_prefs_screen" android:title="@string/development_settings_title"> <Preference android:key="memory" android:icon="@drawable/ic_settings_memory" android:title="@string/memory_settings_title" android:summary="@string/summary_empty" android:fragment="com.android.settings.applications.ProcessStatsSummary" /> <com.android.settings.BugreportPreference android:key="bugreport" android:title="@*android:string/bugreport_title" Loading src/com/android/settings/applications/ProcessStatsBase.java +1 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,7 @@ public abstract class ProcessStatsBase extends SettingsPreferenceFragment // smaller than the actual time selected instead of bumping up to 3 hours // beyond it. private static final long DURATION_QUANTUM = ProcessStats.COMMIT_PERIOD; protected static long[] sDurations = new long[] { public static long[] sDurations = new long[] { 3 * 60 * 60 * 1000 - DURATION_QUANTUM / 2, 6 * 60 *60 * 1000 - DURATION_QUANTUM / 2, 12 * 60 * 60 * 1000 - DURATION_QUANTUM / 2, 24 * 60 * 60 * 1000 - DURATION_QUANTUM / 2 }; Loading src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java +1 −0 Original line number Diff line number Diff line Loading @@ -352,6 +352,7 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra Activity activity, Lifecycle lifecycle, DevelopmentSettingsDashboardFragment fragment, BluetoothA2dpConfigStore bluetoothA2dpConfigStore) { final List<AbstractPreferenceController> controllers = new ArrayList<>(); controllers.add(new MemoryUsagePreferenceController(context)); controllers.add(new BugReportPreferenceControllerV2(context)); controllers.add(new LocalBackupPasswordPreferenceController(context)); controllers.add(new StayAwakePreferenceController(context, lifecycle)); Loading src/com/android/settings/development/MemoryUsagePreferenceController.java 0 → 100644 +78 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.development; import android.content.Context; import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.text.format.Formatter; import com.android.settings.R; import com.android.settings.applications.ProcStatsData; import com.android.settings.applications.ProcessStatsBase; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceController implements PreferenceControllerMixin { private static final String MEMORY_USAGE_KEY = "memory"; private Preference mPreference; private ProcStatsData mProcStatsData; public MemoryUsagePreferenceController(Context context) { super(context); } @Override public String getPreferenceKey() { return MEMORY_USAGE_KEY; } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mPreference = screen.findPreference(getPreferenceKey()); mProcStatsData = getProcStatsData(); setDuration(); } @Override public void updateState(Preference preference) { mProcStatsData.refreshStats(true); final ProcStatsData.MemInfo memInfo = mProcStatsData.getMemInfo(); final String usedResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realUsedRam); final String totalResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realTotalRam); mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult)); } @VisibleForTesting void setDuration() { mProcStatsData.setDuration(ProcessStatsBase.sDurations[0] /* 3 hours */); } @VisibleForTesting ProcStatsData getProcStatsData() { return new ProcStatsData(mContext, false); } } Loading
AndroidManifest.xml +0 −4 Original line number Diff line number Diff line Loading @@ -1031,10 +1031,6 @@ <intent-filter android:priority="3"> <action android:name="com.android.settings.action.SETTINGS" /> </intent-filter> <meta-data android:name="com.android.settings.category" android:value="com.android.settings.category.ia.development" /> <meta-data android:name="com.android.settings.summary" android:resource="@string/summary_empty" /> <meta-data android:name="com.android.settings.FRAGMENT_CLASS" android:value="com.android.settings.applications.ProcessStatsSummary" /> </activity> Loading
res/xml/development_prefs.xml +8 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,14 @@ xmlns:settings="http://schemas.android.com/apk/res/com.android.settings" android:key="development_prefs_screen" android:title="@string/development_settings_title"> <Preference android:key="memory" android:icon="@drawable/ic_settings_memory" android:title="@string/memory_settings_title" android:summary="@string/summary_empty" android:fragment="com.android.settings.applications.ProcessStatsSummary" /> <com.android.settings.BugreportPreference android:key="bugreport" android:title="@*android:string/bugreport_title" Loading
src/com/android/settings/applications/ProcessStatsBase.java +1 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,7 @@ public abstract class ProcessStatsBase extends SettingsPreferenceFragment // smaller than the actual time selected instead of bumping up to 3 hours // beyond it. private static final long DURATION_QUANTUM = ProcessStats.COMMIT_PERIOD; protected static long[] sDurations = new long[] { public static long[] sDurations = new long[] { 3 * 60 * 60 * 1000 - DURATION_QUANTUM / 2, 6 * 60 *60 * 1000 - DURATION_QUANTUM / 2, 12 * 60 * 60 * 1000 - DURATION_QUANTUM / 2, 24 * 60 * 60 * 1000 - DURATION_QUANTUM / 2 }; Loading
src/com/android/settings/development/DevelopmentSettingsDashboardFragment.java +1 −0 Original line number Diff line number Diff line Loading @@ -352,6 +352,7 @@ public class DevelopmentSettingsDashboardFragment extends RestrictedDashboardFra Activity activity, Lifecycle lifecycle, DevelopmentSettingsDashboardFragment fragment, BluetoothA2dpConfigStore bluetoothA2dpConfigStore) { final List<AbstractPreferenceController> controllers = new ArrayList<>(); controllers.add(new MemoryUsagePreferenceController(context)); controllers.add(new BugReportPreferenceControllerV2(context)); controllers.add(new LocalBackupPasswordPreferenceController(context)); controllers.add(new StayAwakePreferenceController(context, lifecycle)); Loading
src/com/android/settings/development/MemoryUsagePreferenceController.java 0 → 100644 +78 −0 Original line number Diff line number Diff line /* * Copyright (C) 2017 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.settings.development; import android.content.Context; import android.support.annotation.VisibleForTesting; import android.support.v7.preference.Preference; import android.support.v7.preference.PreferenceScreen; import android.text.format.Formatter; import com.android.settings.R; import com.android.settings.applications.ProcStatsData; import com.android.settings.applications.ProcessStatsBase; import com.android.settings.core.PreferenceControllerMixin; import com.android.settingslib.development.DeveloperOptionsPreferenceController; public class MemoryUsagePreferenceController extends DeveloperOptionsPreferenceController implements PreferenceControllerMixin { private static final String MEMORY_USAGE_KEY = "memory"; private Preference mPreference; private ProcStatsData mProcStatsData; public MemoryUsagePreferenceController(Context context) { super(context); } @Override public String getPreferenceKey() { return MEMORY_USAGE_KEY; } @Override public void displayPreference(PreferenceScreen screen) { super.displayPreference(screen); mPreference = screen.findPreference(getPreferenceKey()); mProcStatsData = getProcStatsData(); setDuration(); } @Override public void updateState(Preference preference) { mProcStatsData.refreshStats(true); final ProcStatsData.MemInfo memInfo = mProcStatsData.getMemInfo(); final String usedResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realUsedRam); final String totalResult = Formatter.formatShortFileSize(mContext, (long) memInfo.realTotalRam); mPreference.setSummary(mContext.getString(R.string.memory_summary, usedResult, totalResult)); } @VisibleForTesting void setDuration() { mProcStatsData.setDuration(ProcessStatsBase.sDurations[0] /* 3 hours */); } @VisibleForTesting ProcStatsData getProcStatsData() { return new ProcStatsData(mContext, false); } }