[英]How to build a release version of an iOS framework in Xcode?
假設我執行以下操作:
從這里,我可以構建框架的調試版本(在 Debug-iphoneos 文件夾中),但我無法弄清楚如何構建框架的發布版本(在 Release-iphoneos 中)。 我認為 Archive 可能會這樣做,但事實並非如此。 請指點?
這對我有用:
選擇您的框架目標,然后單擊產品 -> 存檔。 如果在成功構建框架后沒有彈出管理器窗口,則轉到框架目標的“構建設置”,查找選項“跳過安裝”並將其更改為“否”(然后再次存檔)。
當您將框架添加到其他 Xcode 項目時,您必須將“$(BUILT_PRODUCTS_DIR)”添加到構建設置 -> 框架搜索路徑。 這將在您運行項目(使用 Debug)時創建 Debug,並在您歸檔項目時創建 Release 版本。 存檔不會在 Products 目錄下創建 Release 版本,但會在“Intermediates.noindex”文件夾中創建 Release。
通過 Xcode IDE 構建框架的另一種方法是從命令行構建它。
您可以使用以下命令為iphoneos
設備生成框架的發布版本:
xcodebuild -workspace TestSDK.xcworkspace -scheme TestSDK -configuration Release -sdk iphoneos
您可以將-configuration
參數的值從Release
更改為Debug
以生成調試版本,或者將-sdk
參數的值從iphoneos
為iphonesimulator
以生成 Simulator 設備的版本。
請注意,您可能需要提供-project
的論證,而不是-workspace
如果你的目標是一個Xcode項目,而不是一個Xcode工作區的一部分的一部分。 運行xcodebuild -help
命令以獲取xcodebuild
選項的完整列表。
如果您更喜歡存檔,也可以從命令行執行此操作,如下所示:
xcodebuild archive -workspace TestSDK.xcworkspace -scheme TestSDK -configuration Release -sdk iphoneos -archivePath "TestSDK_Release_iphoneos.xcarchive" SKIP_INSTALL=NO
請注意,如果您願意,您可以將SKIP_INSTALL=NO
指定為項目或目標的構建設置的一部分。
最后,如果您想將iphoneos
和iphonesimulator
構建合並為一個二進制文件,您可以使用xcodebuild -create-xcframework
命令執行以下操作:
xcodebuild -create-xcframework \
-framework "TestSDK_Release_iphoneos.xcarchive/Products/Library/Frameworks/TestSDK.framework" \
-framework "TestSDK_Release_iphonesimulator.xcarchive/Products/Library/Frameworks/TestSDK.framework" \
-output "TestSDK.xcframework"
有關創建 XCFramework 的官方指南,請參見此處。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.