当出现电池电量不足的弹出窗口时,如何防止亮度变满?


8

每当我的平板电脑中出现“ 电池电量低 ”弹出窗口时,亮度就会变满。这是没有意义的,因为电池电量低时,应将亮度降低到最小而不是最大化。这也很烦人,因为我必须降低亮度。

我查看了设置以禁用此功能,但没有找到这样的选项。

因此,当电池电量不足的弹出窗口出现时如何防止亮度降低100%

我正在运行Android Kitkat 4.4.2,并且我的平板电脑没有植根。


您的亮度设置为自动吗?而且您在使用任何电池改进应用程序吗?
2015年

@Lucky“ 您的亮度设置为自动吗? ”-我的平板电脑没有这样的选项。我将其保持在最低限度。“ 您正在使用任何电池改进应用程序吗? ”-我的平板电脑随附了“联想电源管理器”。但是,它没有任何与亮度有关的选项。所以我认为不是罪魁祸首。但是现在,我在此应用中发现了一个“防护眼镜”(使屏幕亮度降低),该选项当前已禁用。我会尝试一下,看看是否可以防止此问题。等待电池电量变低尝试一下...
Spikatrix

您是否尝试过“防护眼镜”选项?结果如何?另外,我不太希望可以在没有root用户访问权(下有一个文件/sys),恢复出厂设置或您说不存在的系统设置的情况下防止亮度升高。// Tasker应用程序中有一个操作Display -> Brightness,可能会覆盖系统正在遵循的设置。我必须等待15%才能在系统中进行测试。
Firelord

@Firelord我注意到,“防护眼镜”选项启用后,会为我提供调整亮度的滑块。当系统亮度最小并且启用此选项时,滑块将处于最大级别,并且屏幕亮度降低到低于系统提供的最小通道。当系统亮度最小时减小滑块,会进一步减小亮度!但是,如果系统亮度最大,而选件的亮度最小,则屏幕的亮度很低,但底部的条具有完整的亮度。
Spikatrix

@Firelord底部栏是包含3个后退按钮,主页和近期应用程序的栏。您认为横条的额外亮度会影响电池吗?哦!我尚未尝试使用“防护眼镜”选项来解决此问题中提出的问题。仍在等待电池耗尽
Spikatrix

Answers:


4

在这种情况下,自动化是首选选项,或者是唯一的选项,因为Android OS不为引用的要求提供任何设置。

有许多应用程序可用。我更喜欢使用MacroDroid,因为它是免费的(最多 5个宏)并且易于学习。

MacroDroid创建并运行以使其自动化

宏包含以下内容(详细说明了应用程序的帮助):

触发

设备上发生的事件(例如,传入的SMS,插入的耳机)。将多个触发器评估为逻辑(OR),这意味着满足任何触发器条件都将触发宏

动作

设备可以执行的操作(例如,设置墙纸,拍照)

约束条件

触发器触发必须满足的约束条件(例如,星期几,电池电量)。将多个约束评估为逻辑(AND)-含义,必须满足所有约束才能触发触发器

解决方案说明

  1. 在KitKat上测试。我看不到更高版本的Android有任何问题

  2. 当出现电池电量不足指示时,此操作无法“读取”,但对于此宏,假定为15%。您可以在平板电脑中看到电池电量,并相应地调整宏

  3. 不需要root

  4. 此解决方案未解决Android系统关于高/低亮度及其激活方式的说明

系统设置

  1. 如果使用MacroDroid,请不要对其进行绿色处理并将其从任务杀手中排除。

  2. 在“自动保护”(华为手机)或“ Stamina模式”(Sony手机或“ Power Nap”(非索尼设备的Stamina模式Xposed模块)中启用MacroDroid。此外,如果将来更新至棉花糖,请从Doze中排除MacroDroid请参考:有没有一种方法可以将应用程序从Doze中排除?

这些功能可防止在设备未唤醒时激活应用程序,从而节省电池。可能与您的手机无关,但可以将其添加为一般预防措施。

  1. 在辅助功能设置中启用MacroDroid,并在安全设置中允许它作为设备管理员。

  2. 对于Lollipop,请从通知设置启用通知访问


tl; dr: 您的宏看起来像这样

触发条件

电池电量降低至 →(通过比例尺选择百分比或15%)

动作

  • 亮度0在缩放比例上选择-不需要root
  • 等待下一个动作 →设置为10秒(建议将上一个动作和下一个动作分开以确保两者均发生)
  • 屏幕调光器 →10%(在滑动比例上选择-如果较早的操作对您来说不够好,则不需要root-这类似于“屏幕过滤器”应用程序,例如Darker

限制条件

(宏始终运行)


测试宏

命名并保存宏,然后从右侧的3按钮菜单中进行命名

  • 测试动作: 查看宏在每个动作下的行为而无需参考触发/约束条件

  • 测试宏: 查看宏的预期行为 (参考触发器/操作/约束,即整个宏)

故障排除

宏根本不会运行 -在大多数情况下,这是由于未应用正确的系统设置造成的。要验证这一点,请从主应用程序界面上的3按钮帮助选项中选择“ 系统日志”,然后查看宏在触发时是否已运行。如果您的宏名称不正确,请重新检查系统设置


3

注意:以下解决方案要求您的Android植根。


我相信没有根的自动化不会直接解决这个问题,因为它不会更改或覆盖任何内容,而是对现有更改进行自己的处理。我打算在类似的帖子上发帖,直到我意识到解决方案的关键是一个名为max_brightness的文件,位于下的文件/sys,因此是Linux内核的一部分,并由它直接管理。我发现在该文件中设置亮度限制是最好的方法。您可能不同意更好的解决方案。

我注意到,一旦设置了自定义的最大亮度,除非Android和应用程序更改了文件的内容,否则Android和应用程序都无法将亮度设置为该自定义级别以上,这通常是应用程序没有理由更改并且它们都不更改。此外,该文件由root拥有,并且是组root的一部分,因此任何应用程序甚至system_server都需要root特权才能对该文件进行更改。

查找该文件有些棘手。在装有Android 4.2的MTK设备中,该文件似乎位于下/sys/devices/platform/leds-mt65xx/leds/lcd-backlight/

在装有Android 5.0.2及更高版本的Qualcomm设备中,该文件似乎位于中/sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight/

我认为查找该文件的最佳方法是运行搜索查询(设置 为此),例如:

(需要busybox

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

在我的Qualcomm设备中,它给出的输出是:

/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 / button-backlight / max_brightness

lcd-backlight提到的位置是唯一对我有意义的位置,这就是我在设备中找到文件的方式。你不用担心问别人。我试图更改屏幕的亮度,并在名为brightness(也位于上述位置下)的文件中查找更改。除了以外的任何一个都没有反映正确的输出/sys/devices/mdp.0/qcom,mdss_fb_primary.168/leds/lcd-backlight

仅用于演示,请尝试在 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). 

现在,尝试使用亮度滑块或第三方应用程序最大化亮度,您会注意到即使滑块或应用程序的配置看起来最大,屏幕的亮度也不会超过特定点。该“确定点”的亮度肯定会小于您习惯的默认亮度。

请注意,通常会发现max_brightness的最大值为255,亮度范围为0-255。通常,并非总是如此。并且不要担心将限制设置为0。这将导致屏幕不亮,直到您还原更改或重新启动设备。

找到一个限制,在电池电量不足时,该限制不会影响您的睡眠或耗尽电池电量。


自动化

对于 ,请使用任何可以以root特权运行并且满足首选触发器的上下文的命令都可以运行命令的自动化应用程序。我建议使用基于时间的触发器。

一些工作示例:

  • Tasker中,使用您的首选上下文设置配置文件,创建任务并使用以下操作:代码→运行Shell:

    • 命令: echo LIMIT > PATH_TO_MAX_BRIGHTNESS
    • 检查使用根
  • MacroDroid中,设置您喜欢的触发器,然后进行动作安装“ 安全设置”,选择它→动作→运行命令:

    • 命令: echo LIMIT > PATH_TO_MAX_BRIGHTNESS
    • 检查使用根
  • 在流程中,作为流程的一部分,在“ 自动化”中,为触发器设置操作时,在“应用程序”下选择“ Shell命令超级用户”,然后执行以下操作:

    • 命令行: echo LIMIT > PATH_TO_MAX_BRIGHTNESS


    确保安装流程需要的所有权限。

  • DroidAutomation中,设置触发器,然后在任务下,选择Root→执行命令行,然后键入:echo LIMIT > PATH_TO_MAX_BRIGHTNESS

如您所料,您必须为每个应用程序设置两个配置文件。一种设置极限,另一种将最大亮度设置为您习惯的默认值。

电池电量低的显式触发器:

  • 塔斯克

    • 状态→电池电量→设置范围
    • 备选方案:事件→系统→接收到意图→保持一切不变,但将操作设置为android.intent.action.BATTERY_LOW
  • MacroDroid

    按照beeshayms的答案设置触发器

  • 自动化

    转到应用程序→广播接收→保持一切不变,但在操作中选择电池电量低

  • Droid自动化

    从添加触发器中选择电池电量低


我想让您考虑一点,即使用低电量或100%电池触发器会破坏此答案的目的,即覆盖Android想要进行的更改。例如,如果每当电池电量达到100%时都将LIMIT设置为0,那么您的Android将会照常将屏幕照亮至最大值,并且在数毫秒(您正确阅读)中,自动化应用就会运行并设置极限。在几毫秒内您的睡眠可能会中断。

在另一种情况下,当系统发出电池电量不足的消息时,Cool Guy的平板电脑可能会以最大亮起的屏幕显示屏幕,而在几毫秒内,亮度会回落到LIMIT。

解决方法是将电池电量低触发设置为16或更高,将电池充满电设置为99或更低。


尚未掌握基于时间的触发器的优势,您是否愿意澄清?-猜猜我在尝试了解您的解决方案中的系统内容时迷路了:)
beeshyams 2016年

我对基于时间的触发的建议不需要为“电池电量低”或“电池100%”额外触发。我的假设是,不管充电水平如何,OP在一定时期内都会一直处于休眠状态,因此为什么要费心费力。只要确保系统无论如何都不会因高亮度而中断OP的睡眠(您可以设置特殊条件,例如在这段时间内调用来,恢复亮度)。实际上,这只是一个建议,没有强制性要求。我的解决方案的各个部分非常独立。
Firelord


1

免责声明:由于我的设备不在棒棒糖上,因此未在Lollipop上进行测试,我的设备无法在充满电的情况下点亮屏幕。将要求OP或Samsung S4星系用户进行确认。理论上应该起作用

Firelord在他的解决方案中强调了一个点,即我先前的解决方案需要将屏幕点亮几毫秒,这可能会对OP造成干扰。但是,他的方法涉及扎根和识别文件以更改最大亮度级别

IMO,这种方法缺乏通用性,因为它适用于扎根并了解识别文件以更改亮度级别(技术优势除外)的人员。因此,我提出了一种替代解决方案,该解决方案可提供类似的结果,但不会生根

这涉及使用屏幕过滤器应用程序Darker。这有免费版(可将亮度降低到20%)和专业版(可将亮度降低到20%以下,降低到零亮度)提供。相关的应用说明在这里说

较深的颜色可将屏幕亮度降低到极低的水平,以帮助防止夜间眼睛疲劳

宏逻辑:

  • 只要连接了充电电源,即可激活Darker应用,以将屏幕亮度降低到舒适的水平
  • 当唤醒时手动断开充电器的连接时,请点击应用的停止按钮以恢复正常亮度(从通知面板)

  • 如果需要接听电话或短信,请手动执行上述操作或将其添加为宏中的约束

您的宏看起来像这样

触发条件

*电源已连接/已拔下→ 已连接

动作

  • 启动应用程序较暗保持现有(较暗之前已配置为舒适的暗度级别,此选项将其选中)

限制条件

(宏始终运行)

注意

  • 只要充电正在进行,Darker应用就会运行。在不生根的设备中这是一个折衷
  • 有关MacroDroid相关信息,请参阅较早的解决方案
  • 下图给出了使用Darker应用降低屏幕亮度的想法。最左侧的面板没有使用Darker应用,而是将屏幕保持在最低亮度水平。中间使用的是Darker(免费版),将屏幕亮度保持在20%,最后一个使用的是Pro版应用,亮度为10%

点击放大

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.