【发布时间】:2011-07-11 17:46:46
【问题描述】:
是否有 Android API 可以在实际充电时停止充电?
【问题讨论】:
-
非常有效的问题,因为最好防止充电超过 70% 以减少电池老化。但是答案很简单:没有 API 可以实现这一点:(
-
stackoverflow.com/questions/15993635/… 建议在有根设备上是可能的?
标签: android
是否有 Android API 可以在实际充电时停止充电?
【问题讨论】:
标签: android
阅读以前的答案,似乎没有办法专门在软件中执行此操作。然而,它应该相对容易通过一点硬件帮助来做到这一点 - 即通过使用任何具有开放 API 的支持蓝牙或 WiFi 的智能电气开关。然后,手机可以随时以编程方式打开或关闭充电器。
【讨论】:
是否有用于停止充电的 Android API,即使实际充电已开启?
AFAIK 编号
理由:
android.intent.action.BATTERY_CHANGED 是一个受保护的意图,只能由系统发送。因此,您不能复制或覆盖该功能。
【讨论】:
你们都忽略了这一点 - 限制充电的目的是通过使其远离充满电的条件(接近电量耗尽,但这是一个不同的问题)来延长电池寿命。如果您预计需要充满电,请告诉它充电至 100。
如果您无法设置充电限制,那么电池很少会处于空闲状态,并且在使用充电器时会理想地充电。不过,它可能需要设备级别的支持。
【讨论】:
https://play.google.com/store/apps/details?id=es.guille.stopcharge 使用echo "0" > /sys/class/power_supply/battery/device/charge。只要设备未充满电(处于充电状态),它就适用于 nexus 4(已植根)。
【讨论】:
与一些表明不可能的答案相反,使用 ROOT 确实是可能的。您可以在 Play 商店中找到一些允许您执行此操作的应用程序(当然需要 root 权限)。
在我试用过的每部手机上都能运行的最佳应用是电池充电限制。您可以从Play Store 或XDA discussion thread 下载它。该应用正在积极开发中,如果您发现您的手机不受支持,只需在其GitHub page 上提交问题即可。
注意:我不是这个应用程序的开发者。
【讨论】:
很遗憾,这是不可能的。 Android 只有读取电池数据的 API。
电池充电控制在 Android 内核和电池 IC 模块内部。制造商确实会不时更改它,例如 HTC 的周期很小,从 95% 到 100%(IMO 是个坏主意),三星确实会在达到 100% 时停止充电,但我从未见过能够停止充电的设备在 100% 之前充电以减少电池老化 :(.
如果幸运的话,sysfs 接口可能会有所帮助,但它需要 root 并且会因设备而异。
【讨论】:
只是补充一下。三星手机在 100% 后不会停止充电。据我所知,他们“涓流”收费超过这一点,但他们建议您不要将手机充电超过 100% 超过 1 小时。像 Anker 这样的电池制造商也有同样的声明,因此停止 100% 充电的想法非常有用。让手机继续充电的风险是电池膨胀并最终导致电池破裂。在拥有手机后的 3 个月内,我的三星电池没电了,我并没有意识到这一点。
扩展原始问题。我注意到一些内核允许快速充电。如果他们能够提高充电率,我们是否可以降低充电率(涓流)以满足所需的完成时间(当您的早晨闹钟响起时)??
【讨论】:
我在交流插座上安装了一个计时器,我将 Moto E 的充电器插入其中。在估计电池需要充电到 85% 左右的时间后,我设置了计时器。这不是我想的解决方案,但至少它可以让我的手机不会被充电到 100%,因为我在设置计时器时通常会在短边犯错。
【讨论】:
我认为不会有这样的 api。如果它确实存在,它需要得到设备制造商的支持,因为它不是纯粹的操作系统杠杆功能。同样的原因会使使用它成为一个坏主意,因为并非所有设备都支持它。
话虽如此,使用/实施它是一个坏主意,移动设备不是直接从电源运行的,如果用户不想实际充电,则不会插入电缆设备。
【讨论】: