How to calculate battery durability percentage — android
本问题已经有最佳答案,请猛点这里访问。
我可以得到电池的耐用性百分比(例如80%),但是我不知道如何预测电池的耐用性持续时间。例如。 80%的电池将剩余7小时20分钟。我们可以这样做吗,我没有得到任何参考。谁能在这方面指导我。谢谢
我担心在电池耗尽之前不可能获得准确的时间。
这是因为以下原因:
-
没有这样的Android API。
-
您无法构建一些算法/方程式来计算剩余时间,因为这在很大程度上取决于特定的用户行为和已安装的应用程序。
例如:
如果用户不这样做,则电池的使用寿命可能会翻倍甚至三倍-完全打开屏幕。就像用户有20个应用程序以不可预测的时间间隔打开网络连接,使用GPS获取准确的位置,所有电话传感器的活动状态以及蓝牙扫描等等一样。即使在考虑不同的电池寿命和不同的android构建版本之前,尝试跟踪它们的更多其他考虑因素也永远不会结束。
我担心您唯一能做的就是根据您的应用在电池电流当前电池水平的供应商规范上运行的特定设备,提供非常非常粗略的估算(其他应用会做什么)。
请在此处参考此答案,因为它描述了您应该执行的操作,如下所示:
在您的活动中使用
注册到broadCastReceiver
1 | Intent.ACTION_BATTERY_CHANGED |
,更换电池后,您将获得如下所示的新值:
1 2 | int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0); batteryTxt.setText(String.valueOf(level) +"%"); |
这将返回70%,80%等。
但是您无法估算剩余时间,因为某些应用程序可能会消耗更多电量。因此,我认为将电池电量转换为剩余时间不会给出正确的结果。
,请给我一些反馈
希望有帮助。