如何阻止Android设备以编程方式收费?

时间:2011-07-11 17:46:46

标签: android

是否存在用于停止充电的Android API,即使物理上正在充电?

9 个答案:

答案 0 :(得分:9)

阅读以前的答案,看起来似乎无法在软件中完全执行此操作。但是,通过一些硬件帮助来实现它应该相对容易 - 即通过使用任何支持蓝牙或WiFi的智能电气开关和开放API。然后,只要感觉到,手机就可以通过编程方式打开或关闭充电器。

答案 1 :(得分:8)

  

是否存在用于停止充电的Android API,即使物理上正在充电?

AFAIK no。

<强>理由:

android.intent.action.BATTERY_CHANGED是受保护的意图,只能由系统发送。因此,您无法复制或覆盖该功能。

答案 2 :(得分:6)

你们都错过了这一点 - 限制充电的目的是通过使其远离充满电的条件(并且接近空,但这是一个不同的问题)来延长电池寿命。如果您预计需要收取全额费用,请告知其收费为100。

如果您无法设置充电限制,那么充电时,电池很少会闲置并且理想充电。它可能需要设备级支持。

答案 3 :(得分:5)

https://play.google.com/store/apps/details?id=es.guille.stopcharge使用echo "0" > /sys/class/power_supply/battery/device/charge。只要设备没有充满电(处于充电状态),它就可以在nexus 4(rooted)上工作。

也相关:https://android.stackexchange.com/questions/15001/how-can-i-avoid-the-battery-charging-when-connected-via-usb

答案 4 :(得分:1)

遗憾的是,这是不可能的。 Android只有读取电池数据的API。

电池充电控制是Android内核和电池IC模块的内部控制。制造商不时会改变它,例如HTC的周期从95%到100%(IMO一个坏主意),三星一旦达到100%就停止收费,但我从未见过设备能够停止在100%之前充电以减少电池老化:(。

充其量只要我们幸运,sysfs接口可能有助于实现这一点,但它需要root,并且因设备而异。

答案 5 :(得分:1)

只是添加到此。三星手机100%后不会停止充电。据我所知,他们&#34;涓涓细流&#34;收费超过这一点,但他们建议您不要超过1小时超过100%的手机充电。像Anker这样的电池制造商也说明了这一点,因此停止100%充电的想法非常有用。让电话充电的风险是电池膨胀并最终导致电池破裂。我不知道这件事是在拥有手机的3个月内开始杀死我的三星电池。

扩展原始问题。我注意到一些内核允许快速充电。如果他们能够改变充电速率,我们可以改变充电速率(涓流)以满足所需的完成时间(当你的早晨警报响起时)??

答案 6 :(得分:0)

我在AC插座上安装了一个定时器,我将我的Moto E充电器插入。在估计电池需要充电多少时间到85%后,我设置了计时器。这不是我对解决方案的想法,但至少它使我的手机无法充电到100%,因为我在设置定时器时通常在短路时犯错误。

答案 7 :(得分:0)

与某些答案相反,表明这是不可能的,使用ROOT确实可以实现。您可以在Play商店中找到一些允许您执行此操作的应用程序(当然,需要具有root权限)。

在我尝试过的每部手机上都能使用的最好的应用是电池电量限制。您可以从Play StoreXDA discussion thread下载它。该应用程序正在积极开发中,因此,如果您发现您的手机不受支持,只需在其GitHub page上提交问题。


注意::我不是此应用的开发者。

答案 8 :(得分:-1)

我不认为会有这样的api。如果它确实存在,它需要由设备制造商支持,因为它不是纯OS操作杆功能。同样的原因会使用它,因为并非所有设备都支持它。

据说使用/实现它是一个坏主意,移动设备不能直接从电源运行,如果他/她不想实际充电,用户将无法插入电缆设备