Rumah  >  Artikel  >  Java  >  Bagaimana untuk Melaraskan Kecerahan Skrin secara Program pada Android?

Bagaimana untuk Melaraskan Kecerahan Skrin secara Program pada Android?

DDD
DDDasal
2024-10-25 06:31:02304semak imbas

How to Programmatically Adjust Screen Brightness on Android?

Ubah Suai Kecerahan Sistem Secara Program

Untuk melaraskan kecerahan skrin peranti anda secara pengaturcaraan, anda boleh menggunakan pelbagai pendekatan. Satu kaedah biasa adalah untuk mengendalikan atribut kecerahan skrin:

<code class="java">WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = (float)brightness;
window.setAttributes(lp);</code>

Walau bagaimanapun, teknik ini mungkin tidak selalu berfungsi kerana potensi pengehadan atau tetapan nilai maks yang salah.

Pendekatan alternatif ialah memanfaatkan tetapan sistem dan ContentResolver:

<code class="java">private ContentResolver cResolver;
private Window window;
private int brightness;

onCreate() {
    cResolver = getContentResolver();
    window = getWindow();

    try {
        // Handle auto brightness mode
        Settings.System.putInt(cResolver, Settings.System.SCREEN_BRIGHTNESS_MODE, Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL);
        // Retrieve current brightness
        brightness = Settings.System.getInt(cResolver, Settings.System.SCREEN_BRIGHTNESS);
    } catch (SettingNotFoundException e) {
        Log.e("Error", "Cannot access system brightness");
        e.printStackTrace();
    }
}</code>

Anda kemudian boleh melaraskan kecerahan:

<code class="java">// Update system brightness
Settings.System.putInt(cResolver, Settings.System.SCREEN_BRIGHTNESS, brightness);

// Update window brightness attributes
LayoutParams layoutpars = window.getAttributes();
layoutpars.screenBrightness = brightness / 255f;
window.setAttributes(layoutpars);</code>

Jangan lupa sertakan kebenaran yang diperlukan dalam manifes anda:

<code class="xml"><uses-permission android:name="android.permission.WRITE_SETTINGS" /></code>

Untuk tahap API 23 dan ke atas, anda perlu meminta kebenaran melalui Aktiviti Tetapan seperti yang diterangkan dalam dokumentasi.

Atas ialah kandungan terperinci Bagaimana untuk Melaraskan Kecerahan Skrin secara Program pada Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn