如何在Mac上获取电池信息?

时间:2015-11-04 18:27:25

标签: macos

具体来说,我指的是电池健康状况,充电水平,电压。它看起来并不像现有的那样容易。有谁知道是否有一个简单的方法,如果没有,如何实现它?

2 个答案:

答案 0 :(得分:1)

我创建了一个名为SystemInfoKit的开源且易于使用的框架,以获取所有系统信息,CPU,内存和网络使用情况以及温度。

以下是获取所有电池信息所需的所有代码:

// At top of file
#import <SystemInfoKit/SystemInfoKit.h>

JSKSystemMonitor *systemMonitor = [JSKSystemMonitor systemMonitor];

JSKMBatteryUsageInfo batteryUsageInfo = systemMonitor.batteryUsageInfo;

NSLog(@"Battery Installed: %hhd", batteryUsageInfo.present);
NSLog(@"Battery Fully Charged: %hhd", batteryUsageInfo.full);
NSLog(@"Battery Connected To Charger: %hhd", batteryUsageInfo.acConnected);
NSLog(@"Battery Charging: %hhd", batteryUsageInfo.charging);

NSLog(@"Battery Voltage: %f V", batteryUsageInfo.voltage);
NSLog(@"Battery Amperage: %f A", batteryUsageInfo.amperage);

NSLog(@"Battery Design Capacity: %f mAh", batteryUsageInfo.designCapacity);
NSLog(@"Battery Maximum Capacity: %f mAh", batteryUsageInfo.maximumCapacity);
NSLog(@"Battery Current Capacity: %f mAh", batteryUsageInfo.currentCapacity);

NSLog(@"Battery Design Cycle Count: %lu Cycles", batteryUsageInfo.designCycleCount);
NSLog(@"Battery Cycle Count: %lu Cycles", batteryUsageInfo.cycleCount);
NSLog(@"Battery Age: %lu Days", batteryUsageInfo.ageInDays);

更多信息是here

答案 1 :(得分:1)

IOKit中的IOPowerSources功能可用于获取有关电池状态的信息。