我正在尝试使用_CDBatterySaver来打开低功耗模式,只需使用
[[_CDBatterySaver batterySaver] setMode:1];
我知道目录类型与以前的Xcode不同,因此这些方法不起作用。
我也尝试过仅导入“.h”文件,但这不起作用。
它是CoreDuet框架的一部分(从GitHub下载)
谢谢
最佳答案
您将需要一个.tbd
文件进行链接。
Apple停止从iOS 9.3 SDK开始为 private 框架提供这些工具,但您可以自己付出一些努力来生成它们:
.dmg
)。 /System/Library/Caches/com.apple.dyld/dyld_shared_cache_arm*
中找到您的体系结构的共享库缓存。 CoreDuet
,例如:jtool -e CoreDuet /path/to/dyld_shared_cache
lipo -output CoreDuet dyld_shared_cache_*.CoreDuet
.tbd
文件,例如:tbdump CoreDuet > CoreDuet.tbd
笔记1.我写的,所以我显然是附属的。
2.这是一个测试版,目前对符号有点狂热,甚至可以打印
那些不应该的-但到目前为止,它对我来说一直很好。
some_path/
CoreDuet.framework/
CoreDuet.tbd
-Fsome_path -framework CoreDuet
另外,如果步骤1-6对您来说太麻烦了,而您只需要
_CDBatterySaver
符号,那么您就可以将其用于CoreDuet.tbd
并完成它:---
archs: [ armv7, armv7s, arm64 ]
platform: ios
install-name: /System/Library/PrivateFrameworks/CoreDuet.framework/CoreDuet
exports:
- archs: [ armv7, armv7s, arm64 ]
objc-classes: [ __CDBatterySaver ]
...