如何通过编程获得mac os x macbooks的电池寿命?
我想做的是记录电池的百分比。我知道linux中的等价物是sysctl(hw.acpi.battery.life)。然而,当我在MacOSX中查看sysctl的人时,我没有找到找到它的等效代码。有人能指出如何使用objective c实现这一点吗。我可以调用sysctlbyname,但它的结构中没有这个作为输入。请帮助我尝试使用这些功能。您可以使用获取blob,然后从中提取CFArray,列出电源。最后,您可以使用抓取字典 如果可以使用命令行,则可以使用命令 像这样:如何通过编程获得mac os x macbooks的电池寿命?,c,objective-c,macos,acpi,C,Objective C,Macos,Acpi,我想做的是记录电池的百分比。我知道linux中的等价物是sysctl(hw.acpi.battery.life)。然而,当我在MacOSX中查看sysctl的人时,我没有找到找到它的等效代码。有人能指出如何使用objective c实现这一点吗。我可以调用sysctlbyname,但它的结构中没有这个作为输入。请帮助我尝试使用这些功能。您可以使用获取blob,然后从中提取CFArray,列出电源。最后,您可以使用抓取字典 如果可以使用命令行,则可以使用命令 像这样: $ pmset -g 您也
$ pmset -g
您也可以在命令行上使用ioreg。例如:
ioreg -l -w0 |grep CurrentCapacity
提供当前电池状态,可与最大容量进行比较:
ioreg -l -w0 |grep MaxCapacity
获取有关电池状态的更多信息的另一种方法是使用NSTask以SPPowerDataType作为参数执行system_profiler命令。在我的Mac电脑上,它会给我以下结果: 电池信息:
Model Information:
Serial Number: W01396THJD3LA
Manufacturer: SMP
Device Name: bq20z451
Pack Lot Code: 0
PCB Lot Code: 0
Firmware Version: 201
Hardware Revision: 000a
Cell Revision: 165
Charge Information:
Charge Remaining (mAh): 5013
Fully Charged: Yes
Charging: No
Full Charge Capacity (mAh): 5086
Health Information:
Cycle Count: 72
Condition: Normal
Battery Installed: Yes
Amperage (mA): -300
Voltage (mV): 12303
要检索特定的内容,可以解析相应的行,或者使用以下命令生成plist:
$system\u profiler SPPowerDataType-xml>BatteryInfo.plist
这将使基于特定键检索值变得更容易。也许可以尝试添加“objective-c”标记。很遗憾,我还没有要编辑的代表。更具体地说,
pmset-g batt
show's the battery percentage and status可能是重复的。@Dominic你文章中的大多数链接都没有了。