Change "track frame time property" to a list preference
The preference can now be used to disable GPU profiling, expose profiling data to dumpsys gfxinfo or display that data on screen. Change-Id: Ib77e9695445fae4a7419667716e92bcc196437df
This commit is contained in:
@@ -686,6 +686,20 @@
|
|||||||
<item>error</item>
|
<item>error</item>
|
||||||
</string-array>
|
</string-array>
|
||||||
|
|
||||||
|
<!-- Titles for frame time tracking preference. [CHAR LIMIT=35] -->
|
||||||
|
<string-array name="track_frame_time_entries">
|
||||||
|
<item>Off</item>
|
||||||
|
<item>On screen</item>
|
||||||
|
<item>In adb shell dumpsys gfxinfo</item>
|
||||||
|
</string-array>
|
||||||
|
|
||||||
|
<!-- Values for frame time tracking preference. -->
|
||||||
|
<string-array name="track_frame_time_values" translatable="false" >
|
||||||
|
<item>false</item>
|
||||||
|
<item>visual</item>
|
||||||
|
<item>true</item>
|
||||||
|
</string-array>
|
||||||
|
|
||||||
<!-- Titles for app process limit preference. [CHAR LIMIT=35] -->
|
<!-- Titles for app process limit preference. [CHAR LIMIT=35] -->
|
||||||
<string-array name="app_process_limit_entries">
|
<string-array name="app_process_limit_entries">
|
||||||
<item>Standard limit</item>
|
<item>Standard limit</item>
|
||||||
|
@@ -3957,8 +3957,6 @@
|
|||||||
|
|
||||||
<!-- UI debug setting: profile time taken by hardware acceleration to render apps [CHAR LIMIT=25] -->
|
<!-- UI debug setting: profile time taken by hardware acceleration to render apps [CHAR LIMIT=25] -->
|
||||||
<string name="track_frame_time">Profile GPU rendering</string>
|
<string name="track_frame_time">Profile GPU rendering</string>
|
||||||
<!-- UI debug setting: profile hardware acceleration summary [CHAR LIMIT=50] -->
|
|
||||||
<string name="track_frame_time_summary">Measure rendering time in adb shell dumpsys gfxinfo</string>
|
|
||||||
|
|
||||||
<!-- UI debug setting: scaling factor for window animations [CHAR LIMIT=25] -->
|
<!-- UI debug setting: scaling factor for window animations [CHAR LIMIT=25] -->
|
||||||
<string name="window_animation_scale_title">Window animation scale</string>
|
<string name="window_animation_scale_title">Window animation scale</string>
|
||||||
|
@@ -183,10 +183,12 @@
|
|||||||
android:title="@string/show_cpu_usage"
|
android:title="@string/show_cpu_usage"
|
||||||
android:summary="@string/show_cpu_usage_summary"/>
|
android:summary="@string/show_cpu_usage_summary"/>
|
||||||
|
|
||||||
<CheckBoxPreference
|
<ListPreference
|
||||||
android:key="track_frame_time"
|
android:key="track_frame_time"
|
||||||
android:title="@string/track_frame_time"
|
android:title="@string/track_frame_time"
|
||||||
android:summary="@string/track_frame_time_summary"/>
|
android:persistent="false"
|
||||||
|
android:entries="@array/track_frame_time_entries"
|
||||||
|
android:entryValues="@array/track_frame_time_values" />
|
||||||
|
|
||||||
<ListPreference
|
<ListPreference
|
||||||
android:key="enable_opengl_traces"
|
android:key="enable_opengl_traces"
|
||||||
|
@@ -166,11 +166,11 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
private CheckBoxPreference mShowCpuUsage;
|
private CheckBoxPreference mShowCpuUsage;
|
||||||
private CheckBoxPreference mForceHardwareUi;
|
private CheckBoxPreference mForceHardwareUi;
|
||||||
private CheckBoxPreference mForceMsaa;
|
private CheckBoxPreference mForceMsaa;
|
||||||
private CheckBoxPreference mTrackFrameTime;
|
|
||||||
private CheckBoxPreference mShowHwScreenUpdates;
|
private CheckBoxPreference mShowHwScreenUpdates;
|
||||||
private CheckBoxPreference mShowHwLayersUpdates;
|
private CheckBoxPreference mShowHwLayersUpdates;
|
||||||
private CheckBoxPreference mShowHwOverdraw;
|
private CheckBoxPreference mShowHwOverdraw;
|
||||||
private CheckBoxPreference mDebugLayout;
|
private CheckBoxPreference mDebugLayout;
|
||||||
|
private ListPreference mTrackFrameTime;
|
||||||
private ListPreference mWindowAnimationScale;
|
private ListPreference mWindowAnimationScale;
|
||||||
private ListPreference mTransitionAnimationScale;
|
private ListPreference mTransitionAnimationScale;
|
||||||
private ListPreference mAnimatorDurationScale;
|
private ListPreference mAnimatorDurationScale;
|
||||||
@@ -240,7 +240,9 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
mShowCpuUsage = findAndInitCheckboxPref(SHOW_CPU_USAGE_KEY);
|
mShowCpuUsage = findAndInitCheckboxPref(SHOW_CPU_USAGE_KEY);
|
||||||
mForceHardwareUi = findAndInitCheckboxPref(FORCE_HARDWARE_UI_KEY);
|
mForceHardwareUi = findAndInitCheckboxPref(FORCE_HARDWARE_UI_KEY);
|
||||||
mForceMsaa = findAndInitCheckboxPref(FORCE_MSAA_KEY);
|
mForceMsaa = findAndInitCheckboxPref(FORCE_MSAA_KEY);
|
||||||
mTrackFrameTime = findAndInitCheckboxPref(TRACK_FRAME_TIME_KEY);
|
mTrackFrameTime = (ListPreference) findPreference(TRACK_FRAME_TIME_KEY);
|
||||||
|
mAllPrefs.add(mTrackFrameTime);
|
||||||
|
mTrackFrameTime.setOnPreferenceChangeListener(this);
|
||||||
mShowHwScreenUpdates = findAndInitCheckboxPref(SHOW_HW_SCREEN_UPDATES_KEY);
|
mShowHwScreenUpdates = findAndInitCheckboxPref(SHOW_HW_SCREEN_UPDATES_KEY);
|
||||||
mShowHwLayersUpdates = findAndInitCheckboxPref(SHOW_HW_LAYERS_UPDATES_KEY);
|
mShowHwLayersUpdates = findAndInitCheckboxPref(SHOW_HW_LAYERS_UPDATES_KEY);
|
||||||
mShowHwOverdraw = findAndInitCheckboxPref(SHOW_HW_OVERDRAW_KEY);
|
mShowHwOverdraw = findAndInitCheckboxPref(SHOW_HW_OVERDRAW_KEY);
|
||||||
@@ -708,14 +710,28 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void updateTrackFrameTimeOptions() {
|
private void updateTrackFrameTimeOptions() {
|
||||||
updateCheckBox(mTrackFrameTime,
|
String value = SystemProperties.get(HardwareRenderer.PROFILE_PROPERTY);
|
||||||
SystemProperties.getBoolean(HardwareRenderer.PROFILE_PROPERTY, false));
|
if (value == null) {
|
||||||
|
value = "";
|
||||||
|
}
|
||||||
|
|
||||||
|
CharSequence[] values = mTrackFrameTime.getEntryValues();
|
||||||
|
for (int i = 0; i < values.length; i++) {
|
||||||
|
if (value.contentEquals(values[i])) {
|
||||||
|
mTrackFrameTime.setValueIndex(i);
|
||||||
|
mTrackFrameTime.setSummary(mTrackFrameTime.getEntries()[i]);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
mTrackFrameTime.setValueIndex(0);
|
||||||
|
mTrackFrameTime.setSummary(mTrackFrameTime.getEntries()[0]);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void writeTrackFrameTimeOptions() {
|
private void writeTrackFrameTimeOptions(Object newValue) {
|
||||||
SystemProperties.set(HardwareRenderer.PROFILE_PROPERTY,
|
SystemProperties.set(HardwareRenderer.PROFILE_PROPERTY,
|
||||||
mTrackFrameTime.isChecked() ? "true" : "false");
|
newValue == null ? "" : newValue.toString());
|
||||||
pokeSystemProperties();
|
pokeSystemProperties();
|
||||||
|
updateTrackFrameTimeOptions();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateShowHwScreenUpdatesOptions() {
|
private void updateShowHwScreenUpdatesOptions() {
|
||||||
@@ -1071,8 +1087,6 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
writeHardwareUiOptions();
|
writeHardwareUiOptions();
|
||||||
} else if (preference == mForceMsaa) {
|
} else if (preference == mForceMsaa) {
|
||||||
writeMsaaOptions();
|
writeMsaaOptions();
|
||||||
} else if (preference == mTrackFrameTime) {
|
|
||||||
writeTrackFrameTimeOptions();
|
|
||||||
} else if (preference == mShowHwScreenUpdates) {
|
} else if (preference == mShowHwScreenUpdates) {
|
||||||
writeShowHwScreenUpdatesOptions();
|
writeShowHwScreenUpdatesOptions();
|
||||||
} else if (preference == mShowHwLayersUpdates) {
|
} else if (preference == mShowHwLayersUpdates) {
|
||||||
@@ -1108,6 +1122,9 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
} else if (preference == mOpenGLTraces) {
|
} else if (preference == mOpenGLTraces) {
|
||||||
writeOpenGLTracesOptions(newValue);
|
writeOpenGLTracesOptions(newValue);
|
||||||
return true;
|
return true;
|
||||||
|
} else if (preference == mTrackFrameTime) {
|
||||||
|
writeTrackFrameTimeOptions(newValue);
|
||||||
|
return true;
|
||||||
} else if (preference == mEnableTracesPref) {
|
} else if (preference == mEnableTracesPref) {
|
||||||
writeEnableTracesOptions();
|
writeEnableTracesOptions();
|
||||||
return true;
|
return true;
|
||||||
|
Reference in New Issue
Block a user