IOS电池容量信息

时间:2017-05-24 12:11:14

标签: ios xcode battery iokit capacity

今天在Appstore上可以找到的所有IOS电池应用程序都存在同样的问题。他们都显示错误的“MaxCapacity” (今天电池可容纳的最大容量) (不是制造时电池可容纳的原始容量)。

问题是MaxCapacity非常“不敏感”。 它每100mAh更新一次。

例如,如果容量为1767mAh,MacCapacity将显示1700mAh并将一直显示,直到它通过1699mAh,然后它将切换到1600mAh。

有一款名为CoconutBattery的OSX应用程序。 该程序可以显示正确的容量。

任何知道什么叫CoconutBattery用于获取此详细信息的人?

我已经尝试过项目EEIOKitListener(我相信使用IOKit) 此示例也显示与Appstore上的应用程序相同的行为。

我需要和IOS应用程序可以显示正确的MaxCapacity信息。

2 个答案:

答案 0 :(得分:1)

这只显示电池百分比水平。

在Objective-c

UIDevice *Device = [UIDevice currentDevice];
[myDevice setBatteryMonitoringEnabled:YES];
double batteryLvl = (float)[myDevice batteryLevel];
NSLog(@"batteryLvl : %f",batteryLvl);

Swift 3+:

let Device = UIDevice.current
Device.isBatteryMonitoringEnabled = true
let batteryLvl: Double = Double(Device.batteryLevel)
print("batteryLvl : \(batteryLvl)")

OutPut: -

batteryLvl:0.650000

答案 1 :(得分:0)

您可以使用UIDeviceListener

获取maxCapacity

示例:

SELECT latest.* FROM my_table latest
join (SELECT acct_no, MAX(created_at) as max_time FROM my_table GROUP 
BY acct_no) latest2
ON latest.acct_no = latest2.acct_no AND latest.created_at = latest2.max_time

iOS 10的数据可能非常有限。