나는 단순히 자동 밝기를 켜거나 끄려 고하고있다. 나는 작동하지 않는 것자동 밝기를 켜고 끄는 방법? (반복이 아님)
final ToggleButton autoBrightToggle = (ToggleButton) findViewById(R.id.brightToggle);
// display auto brightness state
final ToggleButton autoBrightToggle = (ToggleButton) findViewById(R.id.autoToggle);
autoOnOrOff.setText(String.valueOf(getAutoBrightnessMode()));
autoBrightToggle.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if (autoBrightToggle.isChecked()) {
setAutoBright(true);
} else {
setAutoBright(false);
}
}
}); // end anonymous OnClickListener function
// toggle the brightness mode
private void setAutoBright(boolean mode) {
if (mode) {
Settings.System.putInt(cr, SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
autoOnOrOff.setText(String.valueOf(getAutoBrightnessMode()));
} else {
Settings.System.putInt(cr, SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_MANUAL);
autoOnOrOff.setText(String.valueOf(getAutoBrightnessMode()));
}
}
합니다 (에서 onCreate 방법 내부)이 코드로 시작했다. setAutoBrightnessMode() 메서드는 onResume()에서도 다시 호출되지만 결과는 같지 않습니다. 어쨌든 누군가가이 질문에 불필요하다고 느낀다면 유감 스럽지만 다른 게시물은 내가 갈 곳을 찾지 못했습니다!
(FWIW - 나는 나의 오래된 드로이드 X와 내 갤럭시 넥서스에서이 테스트를하고있어이 아닌 에뮬레이터)
수정 됨 - 본 ON UPDATE : 나는 확실히 지금은 어떤 표시되지 오전 99 %를 해요이 실제로 값을 변경하는 경우에도 설정 패널 및 바탕 화면 위젯에 반영된 자동 밝기 모드로 변경됩니다 (). 문제의 일부는 자동 밝기가 켜져 있는지 여부를 정확하게 결정할 수 없다는 것입니다 (예 : ).
예를 들어, 화면이 빠르게 눈에 띄게 바뀌나요? 나는 환경에 따라 즉각적인 가시적 인 변화를 기대하고 있었지만, 아마도 그 변화는 미묘한 것일까? 그리고 더 오랜 기간 동안? 또는 밝기가 변경되기 전에 환경 변화가 30 초 이상 걸릴 수 있습니까?
누군가 내가 이것을 추적 할 수있는 방법을 제안 할 수 있습니까?
private int getAutoBrightnessMode() {
try {
int brightnessMode = Settings.System.getInt(cr, SCREEN_BRIGHTNESS_MODE);
} catch (Settings.SettingNotFoundException e) {
e.printStackTrace();
int brightnessMode = -10000;
}
return brightnessMode;
}
를하지만 항상 onResume() 후에도, 0을 읽어하십시오 텍스트 필드에이 방법을 접선 - 나는 Settings.System.SCREEN_BRIGHTNESS_MODE 상수를 쿼리 시도했습니다. : - ((
나는 이것이 간단한 과정이라는 것을 알고 있지만, 나는 이걸 혼자서 배우려고 노력하고 있으며, 공식 CS 연수를 거의받지 못했다 ... 그래서 나는 말할 수있다. 이것에 의해 좌절 나는 구석으로이 시점에서 자신을 일 것 같은 내가 바로 더 이상 생각할 수 없다 그래서 짜증 해요 생각합니다.
그래서 도움이 좋은 것입니다.
아무 것도 없습니까? 나는 이것이 단순한 무엇인가 바라고 있었다! –
안드로이드 매니페스트 (예 :'android.permission.WRITE_SETTINGS')에서 적절한 사용 권한을 부여해야 할 것입니다. –
감사합니다 - 나는 그것을했다. 언급 했어야 했어. –