시스템 밝기를 프로그래밍 방식으로 수정
초기 시도 및 문제:
다음을 사용하여 프로그래밍 방식으로 시스템 밝기를 변경하려고 시도했습니다.
<code class="java">WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = (255);
window.setAttributes(lp);</code>
로그인 후 복사
그러나 이 방법은 효과가 없는 것으로 입증되었습니다.
해결책:
시스템 밝기를 성공적으로 변경하려면 다음 접근 방식을 사용해야 합니다. :
-
변수 초기화:
- 원하는 밝기 값(예: 밝기)을 저장할 변수를 선언합니다.
- ContentResolver 핸들을 생성하여 시스템 설정(예: cResolver)에 액세스합니다.
- 현재 창 개체(예: 창)에 대한 참조를 얻습니다.
-
밝기 설정 처리:
- 화면 밝기 모드를 수동으로 설정하여 자동 밝기를 비활성화합니다(예: Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL).
- 가져오기 현재 밝기 수준: 밝기 = Settings.System.getInt(cResolver, Settings.System.SCREEN_BRIGHTNESS).
-
밝기 업데이트:
- 조정된 밝기 변수를 사용하여 시스템 밝기를 설정합니다: Settings.System.putInt(cResolver, Settings.System.SCREEN_BRIGHTNESS, 밝기).
- 새 밝기와 일치하도록 창 속성 수정: window.getAttributes ().screenBrightness = 밝기 / 255f.
- 창에 변경 사항 적용: window.setAttributes(window.getAttributes()).
-
매니페스트 권한:
- AndroidManifest.xml에 WRITE_SETTINGS 권한을 추가하세요.
-
추가 고려 사항:
- Android API 레벨 >= 23의 경우 활동 프롬프트를 통해 WRITE_SETTINGS 권한을 요청해야 할 수도 있습니다.
위 내용은 Android에서 시스템 밝기를 프로그래밍 방식으로 조정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!