在iOS中计算电池寿命

想知道是否有超过苹果技术统计计算电池寿命的参考。 我尝试过比较一些现有的电池应用程序(电池剩余电量*苹果的数字),有时我不会提出相同的答案。 也有使用2G的细胞(而不是3G)的统计数据,我没有看到任何苹果2G电池寿命。

当然,有些应用声称他们是“最准确的”……但是除非有人有非常准确的统计来源,否则我不会看到这种情况。

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%增量更新。