Comment éviter que la luminosité n'atteigne son niveau maximal lorsque la fenêtre contextuelle de batterie faible apparaît?

8

Chaque fois que la fenêtre contextuelle " batterie faible " apparaît sur ma tablette, la luminosité passe à son maximum. Cela n'a aucun sens car la luminosité doit être réduite au minimum au lieu d'aller au maximum, car la batterie est faible. C'est aussi ennuyeux car je dois réduire la luminosité.

J'ai regardé dans les paramètres pour désactiver cela, mais je n'ai trouvé aucune option de ce type.

Alors, comment puis-je empêcher la luminosité d'atteindre 100% lorsque la fenêtre contextuelle de batterie faible apparaît ?

J'utilise Android Kitkat 4.4.2 et ma tablette n'est pas enracinée.

Spikatrix
la source
Votre luminosité est-elle réglée sur automatique? Et utilisez-vous une application d'amélioration de la batterie?
Lucky
@Lucky " Votre luminosité est-elle réglée sur auto? " - Ma tablette ne dispose pas d'une telle option. Je le garde au minimum. " Et utilisez-vous une application d'amélioration de la batterie? " - Ma tablette est livrée avec le "Lenovo Power Manager". Cependant, il n'a aucune option liée à la luminosité. Je ne pense donc pas que ce soit le coupable. Mais maintenant, j'ai trouvé une option "lunettes de protection" (atténue la luminosité de l'écran lorsqu'elle est activée) dans cette application qui est actuellement désactivée. Je vais essayer cela et voir si cela peut éviter ce problème. En attendant que la batterie devienne faible pour l'essayer ...
Spikatrix
Avez-vous essayé cette option de «lunettes de protection»? Quel est le résultat? De plus, je n'ai pas beaucoup d'espoir que la luminosité puisse être empêchée d'augmenter sans accès root (il y a un fichier sous /sys) ou une réinitialisation d'usine ou un paramètre système qui, selon vous, n'existe pas. // Il existe une action dans l'application Tasker Display -> Brightnessqui peut être en mesure de remplacer les paramètres suivis par votre système. Je devrai attendre 15% pour tester dans mon système.
Firelord
@Firelord J'ai remarqué que l'option 'lunettes de protection', lorsqu'elle est activée, me présente un curseur qui ajuste la luminosité. Lorsque la luminosité du système est au minimum et lorsque cette option est activée, le curseur est au niveau maximum et la luminosité de l'écran diminue plus bas que le chenil minimum fourni par le système. Diminuer le curseur lorsque la luminosité du système est au minimum, diminue encore plus la luminosité! Mais lorsque la luminosité du système est au maximum et la luminosité de l'option est au minimum, la luminosité de l'écran est faible mais la barre inférieure a une luminosité totale.
Spikatrix
@Firelord La barre inférieure est la barre qui contient les 3 boutons en arrière, la maison et les applications récentes. Pensez-vous que la luminosité supplémentaire de la barre affectera la batterie? Et oh! Je n'ai pas essayé l'option «lunettes de protection» pour contrer le problème présenté dans cette question.
Attend

Réponses:

4

L'automatisation est l'option préférée, ou plutôt la seule option dans ce cas, car Android OS ne propose aucun paramètre pour les exigences citées.

De nombreuses applications sont disponibles. Je préfère utiliser MacroDroid , car il est gratuit (jusqu'à 5 macros) et facile à apprendre.

MacroDroid crée et exécute des macros pour automatiser

Une macro se compose des éléments suivants (en développant l'aide de l'application):

Déclencheur

Événement (s) survenant sur l'appareil (par exemple SMS entrant, écouteurs insérés). Plusieurs déclencheurs sont évalués en logique (OR) - ce qui signifie que toutes les conditions de déclenchement remplies déclencheraient une macro

Actions

Une action que l'appareil peut effectuer (par exemple, définir un fond d'écran, prendre une photo)

Contraintes

Une contrainte qui doit être satisfaite pour que la gâchette se déclenche (par exemple, jour de la semaine, niveau de la batterie). Les contraintes multiples sont évaluées en logique (ET) - ce qui signifie que toutes les contraintes doivent être satisfaites pour déclencher le déclenchement

Notes sur la solution proposée

  1. Testé sur KitKat. Je ne visualise aucun problème avec les versions supérieures d'Android

  2. Cela ne peut pas "lire" lorsque l'indication de niveau de batterie faible apparaît, mais pour cette macro en supposant qu'elle est de 15%. Vous pouvez voir le niveau de la batterie dans votre tablette et modifier en conséquence la macro

  3. Ne nécessite pas de racine

  4. Cette solution ne traite pas de l'explication du système Android pour la luminosité élevée / faible et de la façon dont ils sont activés

Les paramètres du système

  1. Ne pas Greenifier MacroDroid et l'exclure des tueurs de tâches, si vous les utilisez.

  2. Activez MacroDroid dans "Auto Protect" (téléphones Huawei) ou "Stamina Mode" (téléphones Sony ou "Power Nap" (module Xposed en mode Stamina pour les appareils non Sony). De plus, si vous effectuez une mise à jour vers Marshmallow à l'avenir, excluez MacroDroid de Doze Référez-vous à ceci: Existe - t-il un moyen d'exclure une application de Doze?

Ces fonctionnalités empêchent les applications d'être actives lorsque l'appareil n'est pas réveillé, ce qui permet d'économiser la batterie. Peut ne pas être pertinent pour votre téléphone, mais en l'ajoutant par mesure de précaution générale.

  1. Activez MacroDroid dans les paramètres d'accessibilité et autorisez-le également en tant qu'administrateur de l'appareil dans les paramètres de sécurité.

  2. Pour Lollipop, activez l'accès aux notifications à partir des paramètres de notification


tl; dr: Votre macro ressemblerait à ceci

Déclencheur :

Niveau de la batteriediminue à → (choisissez le pourcentage par échelle mobile ou 15%)

Actions :

  • Luminosité0 ( choisissez sur une échelle mobile - ne nécessite pas de racine )
  • Attendre avant la prochaine action → réglé sur 10 secondes (recommandé de séparer les actions précédentes et suivantes pour garantir que les deux se produisent)
  • Dim ScreenDimmer On → 10% ( Choisissez On glissant l'échelle - ne nécessite pas de racine, si l'action précédente n'est pas assez bonne pour vous - cela s'apparente à des applications de "filtre d'écran" comme Darker )

Contraintes :

Aucun (la macro s'exécute toujours)


Tester la macro

Nommez et enregistrez la macro et à partir du menu à 3 boutons sur le côté droit

  • Actions de test: pour voir comment se comporte la macro à chaque action sans référence aux conditions de déclenchement / contrainte

  • Tester la macro: pour voir comment la macro se comporte comme prévu (en référence au déclencheur / à l'action / aux contraintes, c'est-à-dire à la macro dans son ensemble)

Dépannage

La macro ne fonctionne pas du tout - Dans la plupart des cas, cela est dû au fait que les paramètres système corrects ne sont pas appliqués. Pour vérifier cela, dans l'option d'aide à 3 boutons de l'interface principale de l'application, sélectionnez Journal système et voyez si votre macro s'est exécutée lorsqu'elle a été déclenchée. Si le nom de votre macro ne figure pas, revérifiez les paramètres système

beeshyams
la source
3

Remarque: la solution ci-dessous nécessite que votre Android soit rooté.


Je pense que l'automatisation sans root ne résoudrait pas directement le problème, car elle ne change rien ou ne remplace rien, mais fait ses propres trucs sur les changements existants. J'étais sur le point de publier sur des lignes similaires jusqu'à ce que je réalise que la clé de la solution est un fichier nommé max_brightness, un fichier sous /sys, donc une partie du noyau Linux et directement géré par lui. J'ai trouvé que définir la limite de luminosité dans ce fichier est la meilleure façon d'aller ici. Vous pouvez être en désaccord avec une meilleure solution.

J'ai remarqué qu'une fois que votre luminosité maximale personnalisée est définie, ni Android ni une application n'a été en mesure de régler la luminosité au-delà de ce niveau personnalisé, sauf s'ils ont changé le contenu de ce fichier, ce qui souvent une application n'a aucune raison de changer et aucun d'eux n'a changé non plus. En outre, le fichier appartient à root et fait partie du groupe root, donc toute application ou même system_server aurait besoin du privilège root pour apporter des modifications à ce fichier.

Trouver ce fichier est un peu délicat. Dans mon appareil MTK avec Android 4.2, ce fichier semble être sous /sys/devices/platform/leds-mt65xx/leds/lcd-backlight/.

Dans mon appareil Qualcomm avec Android 5.0.2 et supérieur, le fichier semblait être /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight/.

Je suppose que la meilleure façon de trouver ce fichier est d'exécuter une requête de recherche (configuration pour cela), comme:

(Nécessite une boîte occupée )

adb shell su -c 'find /sys/ -type f -iname "max_brightness"'

Dans mon appareil Qualcomm, la sortie qu'il donne est:

/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/red/max_brightness
/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/blue/max_brightness
/sys/devices/f9924000.i2c/i2c-2/2-0068/leds/green/max_brightness
/sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight / max_brightness
/sys/devices/qcom,camera-led-flash.81/leds/torch-light/max_brightness
/sys/devices/msm_sdcc.1/leds/mmc0::/max_brightness
/sys/devices/msm_sdcc.2/leds/mmc1::/max_brightness
/ sys / devices / 01-qcom, leds-d300 / leds / led: flash_torch / max_brightness
/ sys / devices / 01-qcom, leds-d300 / leds / led: flash_0 / max_brightness
/ sys / devices / 01-qcom, leds-d300 / leds / led: flash_1 / max_brightness
/ sys / devices / 01-qcom, leds-e200 / leds / kpdbl-lut-2 / max_brightness
/ sys / devices / 01-qcom, leds-e200 / leds / kpdbl-pwm-3 / max_brightness
/ sys / devices / 01-qcom, leds-e200 / leds / kpdbl-pwm-4 / max_brightness
/ sys / devices / 01-qcom, leds-e200 / leds / bouton-rétro-éclairage / max_brightness

L'endroit où lcd-backlightest mentionné était le seul qui avait du sens pour moi et c'est ainsi que j'ai trouvé le fichier dans mon appareil. Ne vous inquiétez pas de poser des questions sur les autres. J'ai essayé de changer la luminosité de l'écran et j'ai cherché les changements dans le fichier nommé brightness(également situé sous ces emplacements). Aucun d'eux ne reflète la sortie correcte autre que celle de /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight.

Uniquement pour la démonstration, essayez de définir une limite dans max_brightness

adb shell su -c 'echo LIMIT > PATH_TO_MAX_BRIGHTNESS'   # in my case PATH_TO_MAX_BRIGHTNESS is /sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight/ and set LIMIT to a value less than 30 (not limited to). 

Essayez maintenant de maximiser la luminosité en utilisant le curseur de luminosité ou une application tierce et vous remarquerez que la luminosité de votre écran ne dépasse pas un certain point, même lorsque le curseur ou la configuration de l'application semble être au maximum. La luminosité de ce "certain point" serait certainement inférieure à celle par défaut à laquelle vous êtes habitué.

Notez que la valeur maximale dans max_brightness se trouve souvent être 255 et la luminosité varie de 0 à 255. Souvent, ce n'est pas toujours vrai. Et ne craignez pas de définir la limite à 0. Cela empêcherait l'écran de s'allumer jusqu'à ce que vous annuliez les modifications ou redémarriez l'appareil.

Trouvez une limite qui ne vous dérangerait pas dans votre sommeil ou qui épuise fortement la batterie lorsque la batterie est faible.


Automatisation

Pour , utilisez n'importe quelle application d'automatisation qui peut exécuter une commande avec le privilège root et lorsque le contexte de votre déclencheur préféré est respecté. Je recommande un déclencheur basé sur le temps.

Quelques exemples pratiques:

  • Dans Tasker , configurez un profil avec votre contexte préféré, créez une tâche et utilisez l'action: Code → Exécuter le shell:

    • Commander: echo LIMIT > PATH_TO_MAX_BRIGHTNESS
    • check Utiliser la racine
  • Dans MacroDroid , configurez votre déclencheur préféré et pour installer les paramètres sécurisés , choisissez-le → Actions → Exécuter la commande:

    • Commander: echo LIMIT > PATH_TO_MAX_BRIGHTNESS
    • check Utiliser la racine
  • Dans Automate , dans le cadre de votre flux, lors de la configuration d'une action pour votre déclencheur, sélectionnez superutilisateur de commande Shell sous Applications et procédez comme suit:

    • Ligne de commande: echo LIMIT > PATH_TO_MAX_BRIGHTNESS


    Assurez-vous d'installer toutes les autorisations requises par le flux.

  • Dans DroidAutomation , configurez votre déclencheur et sous tâche, sélectionnez Racine → Exécuter une ligne de commande et tapez:echo LIMIT > PATH_TO_MAX_BRIGHTNESS

Comme vous l'auriez deviné, vous devrez configurer deux profils pour chaque application. L'un pour définir une limite et l'autre pour définir la luminosité maximale à la valeur par défaut à laquelle vous êtes habitué.

Déclencheurs explicites de batterie faible:

  • Tasker

    • État → Niveau de la batterie → définir la plage
    • Alternative: Événement → Système → Intention reçue → laissez tout intact, mais définissez l'action sur android.intent.action.BATTERY_LOW.
  • MacroDroid

    Suivez la réponse des abeilles pour configurer le déclencheur

  • Automatiser

    Accédez à Applications → Réception de diffusion → laissez tout intact, mais sélectionnez Batterie faible en action

  • Droid Automation

    Sélectionnez Batterie faible dans Ajouter un déclencheur


J'aimerais que vous gardiez cela à l'esprit que l'utilisation d'une batterie faible ou d'un déclencheur à 100% de la batterie irait à l'encontre du but de cette réponse, qui est de remplacer les modifications qu'Android souhaite apporter. Par exemple, si vous configurez LIMIT à 0 chaque fois que la batterie atteint 100%, ce qui se passerait, c'est que votre Android allumerait l'écran au maximum comme d'habitude et en quelques millisecondes (vous lisez correctement), votre application d'automatisation s'exécuterait et fixerait la limite. Votre sommeil peut être interrompu dans ces millisecondes.

Dans une autre situation, lorsque l'intention de batterie faible est diffusée par le système, la tablette de Cool Guy peut se retrouver avec un écran allumé au maximum et en quelques millisecondes, la luminosité retombera à LIMIT.

La solution de contournement consiste à configurer le niveau de la batterie à 16 ou plus pour un déclenchement de batterie faible et à 99 ou moins pour une charge complète de la batterie.

Seigneur du feu
la source
Vous n'avez pas saisi l'avantage du déclencheur basé sur le temps, voudriez-vous clarifier? -Guess Je me suis perdu en essayant de comprendre les choses du système dans votre solution :)
beeshyams
Ma recommandation sur le déclenchement basé sur le temps ne nécessite pas de déclenchement supplémentaire pour "batterie faible" ou "batterie 100%". Je suppose que quel que soit le niveau de charge, pendant une certaine période, OP serait toujours en sommeil, alors pourquoi se soucier du niveau de charge? Assurez-vous simplement que le système n'interrompt jamais le sommeil de l'OP par une luminosité élevée, quoi qu'il arrive (vous pouvez configurer des conditions spéciales, comme si un appel arrive pendant ce temps, restaurer la luminosité). En fait, ce n'est qu'une recommandation, rien d'obligatoire. Les parties de ma solution sont très indépendantes.
Firelord
2

Essayez d'utiliser une application appelée Filtre d'écran. ATTENTION: ne réglez pas la luminosité en dessous de 17 car vous ne voyez rien. Vous pouvez envoyer un SMS à nighy n la personne assise à côté de vous ne verra même pas

Elvis Farouk Muturi
la source
1

Avertissement: Non testé sur Lollipop car mon appareil n'est PAS sur Lollipop, mon appareil n'éclaircit pas l'écran à pleine charge. Demanderait aux utilisateurs OP ou Samsung S4 galaxy de confirmer. Théoriquement devrait fonctionner

Firelord dans sa solution a mis en évidence un point que ma solution précédente implique que l'écran est allumé pendant quelques secondes, ce qui pourrait éventuellement perturber OP. Cependant, sa méthode implique l' enracinement et l'identification du fichier pour modifier les niveaux de luminosité maximum

OMI, cette approche manque d'universalité, car elle est applicable à ceux qui sont enracinés et ont la compréhension d'identifier le fichier pour changer les niveaux de luminosité (mérite technique à part). Par conséquent, je présente une solution alternative qui fournit des résultats similaires mais sans enracinement

Cela implique d'utiliser une application de filtrage d'écran plus sombre . Ceci est disponible en version gratuite (qui peut réduire la luminosité à 20%) et en version Pro (qui peut réduire la luminosité en dessous de 20%, jusqu'à une luminosité nulle). La description de l'application pertinente ici dit

Plus sombre peut réduire la luminosité de votre écran à des niveaux extrêmement bas, pour aider à prévenir la fatigue oculaire pendant la nuit

Logique macro:

  • Activez l'application Darker chaque fois que l'alimentation pour charger est connectée afin de réduire la luminosité de l'écran à un niveau confortable
  • Lorsque le chargeur est déconnecté manuellement au réveil, appuyez sur le bouton d' arrêt de l'application pour revenir à la luminosité normale (à partir du panneau de notification)

  • S'il est nécessaire de répondre à un appel ou à un SMS, effectuez manuellement ce qui précède ou ajoutez-le comme contrainte dans la macro

Votre macro ressemblerait à ceci

Déclencheur :

* Alimentation connectée / supprimée → Connecté

Actions :

  • Lancer l'applicationPlus sombreGarder l'existant (Plus sombre est précédemment configuré au niveau d'obscurité confortable et cette option le sélectionne)

Contraintes :

Aucun (la macro s'exécute toujours)

Remarque

  • L'application plus sombre est en cours d'exécution chaque fois que la charge est en cours. Ceci est un compromis en matière de non rootage
  • Reportez-vous à la solution précédente pour les informations liées à MacroDroid
  • La figure ci-dessous donne une idée de la réduction de la luminosité de l'écran à l'aide de l'application Darker. Le panneau à l'extrême gauche est sans utiliser l'application Darker mais en gardant l'écran au niveau de luminosité minimum. Au milieu, utilise Darker (version gratuite) en maintenant la luminosité de l'écran à 20% et le dernier utilise l'application de la version Pro à 10% de luminosité

Appuyez pour agrandir

beeshyams
la source