![](/img/trans.png)
[英]How do I make the green battery icon (when phone is charging) in the status bar of iOS 7 fade when the status bar does as well?
[英]Mac - Get Battery/Charging Status (Plugged in or not)
我正在构建一个需要每分钟轮询服务器的Mac OSX应用程序,如果用户愿意,甚至更少。 不幸的是,该服务不支持推...
无论如何,我想为用户提供两个选项:
如何在Objective C中获得充电器的状态? 只有在插入笔记本电脑的情况下,我才真正关心实际的百分比。 显然,这对桌面来说无关紧要,所以希望有一个适用于笔记本电脑和台式机的解决方案。
看看IOPowerSources API。
首先调用IOPSCopyPowerSourcesInfo()
然后IOPSCopyPowerSourcesList()
来获取所有可用的功率源的列表。 IOPSGetPowerSourceDescription()
将返回包含特定电源信息的字典。 根据文档,密钥kIOPSPowerSourceStateKey
描述“当前的电源kIOPSBatteryPowerValue
表示电源正在吸取内部电源; kIOPSACPowerValue
表示电源连接到外部电源。”
您还可以在使用IOPSNotificationCreateRunLoopSource()
更改电源时设置通知。
(注意:我没有测试任何这些,只是查看了文档。)
虽然这个问题确实已经有了一个可以接受我的解决方案的答案,但点击很多很多破损的链接是很痛苦的。
这是我的解决方案:
IOKit.framework
#import <IOKit/ps/IOPowerSources.h>
码:
CFTimeInterval timeRemaining = IOPSGetTimeRemainingEstimate(); if (timeRemaining == kIOPSTimeRemainingUnlimited) { // connected to outlet } else if (timeRemaining == kIOPSTimeRemainingUnknown){ // time remaining unknown (recently unplugged) } else if ((timeRemaining / 60) < 30){ // less than 30 minutes remaining }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.