OSX中的电池状态?

Aln*_*tak 29 macos battery

如何从我自己的应用程序中读取MacBookPro上的电池状态?

到目前为止,谷歌搜索仅显示设备驱动程序的API来处理电源事件 - 用户登陆进程无法访问此信息.

谢谢.

Gar*_*ers 72

如果您正在寻找从命令行查询它的快速方法,您会发现pmset命令很有用.要查询电池状态,请特别使用:

$ pmset -g batt

  • 很奇怪这有很多upvotes,当它显然是我正在寻找的API调用(根据我接受的答案) (5认同)
  • 可能因为问题标题/标签没有区分脚本/ CLI和编译的上下文,所以很多(像我一样)发现一个简单的可回答的答案比一个答案需要我放入特定的编译语言更有用. (4认同)
  • 这在通过SSH远程使用Mac时特别有用.很高兴知道你是否需要冲刺才能连接到AC! (2认同)

Ben*_*ieb 26

您将需要使用IOKit,特别是IOPowerSources函数.您可以使用IOPSCopyPowerSourcesInfo()获取blob,IOPSCopyPowerSourcesList()然后从中提取CFArray,列出电源.然后使用IOPSGetPowerSourceDescription()拉出字典(有关字典的内容,请参阅IOPSKeys.h).