如何确定OSX是靠电池供电还是不通电

Pet*_*isu 5 macos cocoa battery

我想在电池模式下调整应用程序的功能

模式更改时,如何检测应用程序处于电池模式等?

Eon*_*nil 5

IOPSGetTimeRemainingEstimate函数返回剩余电量。

从“ 讨论”部分引用:

如果连接到“无限”电源(例如交流电源或任何外部电源),则返回值为kIOPSTimeRemainingUnlimited

如果系统使用电池或UPS等“有限”电源,但仍在计算剩余时间(在每次系统电源事件(例如从睡眠中醒来或拔下交流电源)后可能要花费几秒钟的时间),则返回值为kIOPSTimeRemainingUnknown

否则,如果系统使用“有限”电源,并且系统具有准确的剩余时间估算值,则系统将返回剩余时间CFTimeInterval估算值,直到系统没有电池电源为止。

如果需要更详细的电池信息,请使用IOPSCopyPowerSourcesInfo>和IOPSGetPowerSourceDescription>。


IOPSNotificationCreateRunLoopSource函数可用于在电源相关事件上注册回调函数。