本人没有 macOS 开发经验,Swift 也是初入门,最近为了解决 mbp 电池的痛点写了个自用的 app,在优化的过程中有不少疑惑 问题一 🤔问题二 ,比如以下的代码:
guard let snapshot = IOPSCopyPowerSourcesInfo()?.takeRetainedValue()
else { throw BatteryError.error }
guard let sources: NSArray = IOPSCopyPowerSourcesList(snapshot)?.takeRetainedValue()
else { throw BatteryError.error }
guard let info: NSDictionary = IOPSGetPowerSourceDescription(snapshot, ps as CFTypeRef)?.takeUnretainedValue()
else { throw BatteryError.error }
通过输出最后的这个 info 我会得到:
{
"Battery Provides Time Remaining" = 1;
BatteryHealth = Good;
Current = "-1243";
"Current Capacity" = 57;
DesignCycleCount = 1000;
"Hardware Serial Number" = G6MUQP9E5A371568B;
"Is Charging" = 0;
"Is Present" = 1;
"Max Capacity" = 100;
Name = "InternalBattery-0";
"Power Source ID" = 5470344;
"Power Source State" = "Battery Power";
"Time to Empty" = 224;
"Time to Full Charge" = 0;
"Transport Type" = Internal;
Type = InternalBattery;
}
好了,我想查询这个 IOPSGetPowerSourceDescription 方法返回的值的每一个值的作用,以及有可能有哪些值,我要怎么查呢?比如这个 Power Source State 是什么意思,“1” 又代表什么?
我只能找到这个官方文档 IOPSGetPowerSourceDescription 感觉这个文档解释好简陋,写了跟没写一样。搜索 CFDictionary 也没有更详细的文档了。请问像这种情况 Swift/macOS 的开发者们是怎么、去哪查阅相关解释的呢?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.