![](/img/trans.png)
[英]Why app archive failed with custom frameworks in iOS, swift, xcode 9.2
[英]How To Import Private Frameworks to Xcode 9.2 (iOS 11) , swift
我想測試一些用於研究目的的東西(不是App Store!),我想在其中使用Xcode 9.2(iOS 11)中的私有框架。 為此,我需要將要使用的私有框架導入Xcode項目。
但是在Xcode 9.2中,文件夾結構中沒有私有框架文件夾。
有什么想法可以實現?
私有框架就像公共框架一樣是一個捆綁。 您可以使用以下命令顯式加載它:
if let framework = Bundle(path: "/System/Library/PrivateFrameworks/BatteryCenter.framework") {
// Works only on real devices
framework.load()
}
但是您需要為包含的類聲明。 您可以使用class-dump
作為Objective C標頭來創建它們,並將over橋接標頭導入Swift。
您可以使用class-dump /.../PrivateFrameworks/XXX.framework/XXX
執行class-dump
。 您需要將框架作為二進制文件而不是*.tbd
文件。 BatteryCenter.framework
示例:
類轉儲/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/BatteryCenter.framework/電池中心
這將為您顯示框架中包含的所有類的類聲明。
請注意,在設備或模擬器上,您應該使用
/System/Library/PrivateFrameworks/BatteryCenter.framework
用於加載捆綁包。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.