Créez une activité sans interface utilisateur pour faire le changement de luminosité dans AppWidget

StackOverflow https://stackoverflow.com/questions/9001703

Question

J'essaie de mettre à jour la luminosité de l'écran à partir d'un widget mais j'ai quelques problèmes.

Pour changer le niveau de luminosité, j'utilise:

Settings.System.putInt(context.getContentResolver(),android.provider.Settings.System.SCREEN_BRIGHTNESS, 200);

Cela modifie le paramètre d'affichage (en fait dans l'affichage-> luminosité Le niveau est correct) mais la luminosité effective de l'affichage n'est pas modifiée. Si je verrouille l'écran et le déverrouillage, la luminosité change enfin la valeur que j'ai définie.

Je suppose qu'il s'agit d'un problème de mise à jour des paramètres, alors comment les paramètres d'affichage peuvent-ils être immédiatement mis à jour après la modification des paramètres?

La réponse pour ceci est Mettre à jour la luminosité de l'affichage sur Android après l'avoir changé par programme

J'ai lu que WindowManager.LayoutParams lp = getWindow (). GetAtTributes (); devrait être utilisé mais je travaille dans un widget d'application, donc getWindow () ne peut pas être appelé.

Comment créer une activité sans interface utilisateur pour faire le changement de luminosité dans AppWidget ??

Était-ce utile?

La solution

J'ai eu le même problème de modifier la luminosité de l'écran et j'ai publié le code complet de la solution ici:

https://stackoverflow.com/a/9848456/1204377

Je le change d'un service, pas d'un widget, cependant. Mais je crois toujours que vous pourriez facilement adapter mon code pour travailler avec un widget également.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top