想知道是否有超出Apple技术统计数据的参考来计算电池寿命。我已经尝试比较一些现有的电池应用程序(电池剩余电量%* Apple的数字),有时我也没有提出相同的答案。还有使用2G电池(而不是3G)的统计数据,我在Apple上看不到2G电池续航时间。
当然,有些应用声称它们“最准确”......但除非有人拥有非常准确的统计数据,否则我不会发现这种情况。
答案 0 :(得分:17)
API允许您注册以接收有关电池电量更改的通知。它仅报告向上或向下增加5%的变化,但您可以使用计时器并测量两次更改(或初始电池电量和第一次更改)之间的时间。以下是注册通知的方式:
// Use this call to get the current battery level as a float
// [[UIDevice currentDevice] batteryLevel]
[[UIDevice currentDevice] setBatteryMonitoringEnabled:YES];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(batteryStateDidChange:)
name:UIDeviceBatteryStateDidChangeNotification
object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(batteryLevelDidChange:)
name:UIDeviceBatteryLevelDidChangeNotification
object:nil];
第一个通知告诉您当前状态,例如拔掉,充电或充满电。只要达到5%的增量,第二个就会被触发。
在我看来,如果您给出的是5%更改或更低的更改通知,那么准确性不是您可以很好地计算或快速计算的。如果设备没有做任何事情,5%的变化可能需要很长时间。
也许您可以使用计时器监视[[UIDevice currentDevice] batteryLevel],但是,虽然我没有尝试过,但我认为它只会以相同的5%增量进行更新。