Maison > Java > javaDidacticiel > le corps du texte

Comment ajuster par programme la luminosité de l'écran sur Android ?

DDD
Libérer: 2024-10-25 06:31:02
original
303 Les gens l'ont consulté

How to Programmatically Adjust Screen Brightness on Android?

Modifier par programme la luminosité du système

Pour régler la luminosité de l'écran de votre appareil par programme, vous pouvez utiliser différentes approches. Une méthode courante consiste à gérer les attributs de luminosité de l'écran :

<code class="java">WindowManager.LayoutParams lp = window.getAttributes();
lp.screenBrightness = (float)brightness;
window.setAttributes(lp);</code>
Copier après la connexion

Cependant, cette technique peut ne pas toujours fonctionner en raison de limitations potentielles ou de paramètres de valeur maximale incorrects.

Une approche alternative consiste à exploiter les paramètres système et 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>
Copier après la connexion

Vous pouvez ensuite régler la luminosité :

<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>
Copier après la connexion

N'oubliez pas d'inclure l'autorisation nécessaire dans votre manifeste :

<code class="xml"><uses-permission android:name="android.permission.WRITE_SETTINGS" /></code>
Copier après la connexion

Pour l'API de niveau 23 et supérieur, vous devez demander l'autorisation via l'activité des paramètres comme décrit dans la documentation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!