电池使用 - IOS

Posted

技术标签:

【中文标题】电池使用 - IOS【英文标题】:Battery Usage - IOS 【发布时间】:2013-05-06 10:37:12 【问题描述】:

我想在应用的状态栏上显示应用的电池使用情况。它使用 GPS,因此 GPS 信号和应用程序的电池使用详细信息对用户了解电池消耗很有用。

有没有办法从设备获取电池使用情况?并仅显示我的应用单独消耗的电池电量。在仪器上,它显示了一段时间内的图表。

我想以数字格式显示电池使用情况,而不是图表。

【问题讨论】:

在一个与 GPS 相关的应用程序中,如果我看到它消耗了多少电池,我会感到害怕 :) 好主意 【参考方案1】:

使用以下代码获取电池电量

UIDevice *myDevice = [UIDevice currentDevice];
[myDevice setBatteryMonitoringEnabled:YES];
float batteryLevel = [myDevice batteryLevel];
_battery.text = [NSString stringWithFormat:@"%f",batteryLevel*100];
[myDevice batteryLevel];

将为您提供 0.0(空)和 1.0(100% 充电)之间的电池

ios - Issue with displaying battery status

【讨论】:

感谢您的回复,但这显示了当前的电池电量,但我想显示仅我的应用程序耗尽的电池电量。抱歉,如果我之前的问题不清楚我在寻找什么..... 我把我的问题改成了我到底需要什么。非常感谢您回答我的第一个问题。现在我需要单独计算应用程序的电池使用量。有没有办法做到这一点? 在应用程序启动时获取电池状态并将其存储在您的应用程序中,在一段时间后获取电池状态,从启动状态中减去它并显示给用户。这样您就可以不断地向用户显示更新的电池状态。 电池的差异将显示您的应用消耗了多少电池。我希望你明白我的意思。 这就是我的想法,但这里的锁是,我们不能确定只有我们的应用程序在用户设备上运行。如果大量耗电的游戏与我们的应用程序同时运行会怎样。然后,我们最终显示两个(或几个正在运行的)应用程序耗尽了电池电量。现在这不会单独显示我们的应用程序电池使用情况吧?【参考方案2】:

从命令行我们可以使用libimobiledevice工具获取iOS手机的电池详细信息。

在工具里面使用命令:

./ideviceinfo -q com.apple.mobile.battery

它会返回如下内容:

电池电流容量:30 BatteryIsCharging:真 ExternalChargeCapable: 真 外部连接:真 完全充电:假 GasGaugeCapability: true

【讨论】:

我知道要获取电池电量。但我正在寻找的是,我只想知道我的应用程序单独消耗的电量。 在我们拥有的自动运行中,我们在测试套件之前和之后添加一个调用并计算差异以了解消耗的电池电量。我不确定您是否可以获得该特定应用程序的消耗电池。 嗨@Manoj 可以请告诉我你如何获得电池电量。我需要它 developer.apple.com/library/ios/samplecode/BatteryStatus/…

以上是关于电池使用 - IOS的主要内容,如果未能解决你的问题,请参考以下文章

如何查找 iOS 应用的电池使用情况

减少 iOS 后台位置电池使用量

如何计算电池时间,3g 游戏等,iOS

使用 iOS CLLocationManager 节省电池

在 iOS 中检查我的应用的电池消耗

如何从连接的 iOS 设备获取电池充电周期?