不管是在Owner还是User/Guester 下,最终设置Screen Timeout的位置都在:
PowerManagerService.java
Private void updateSettingsLocked(){
...
mScreenOffTimeoutSetting = Settings.System.getIntForUser(resolver,
Settings.System.SCREEN_OFF_TIMEOUT, DEFAULT_SCREEN_OFF_TIMEOUT,
UserHandle.USER_CURRENT);
...
}
UI 显示设定值,从Settings 字段中读取:
src/com/android/settings/display/ScreenTimeoutSettings.java
private String getCurrentSystemScreenTimeout(Context context){
if (context == null){
return Long.toString(FALLBACK_SCREEN_TIMEOUT_VALUE);
} else {
return Long.toString(Settings.System.getLong(context.getContentResolver(),
SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE));
}
}
src/com/android/settings/display/ScreenTimeoutPreferenceController.java
private long getCurrentScreenTimeout() {
return Settings.System.getLong(mContext.getContentResolver(),
SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE);
}