尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

30秒看懂xcodebuild:AutoPacking-iOS背后的iOS自动打包命令完全体系

30秒看懂xcodebuild:AutoPacking-iOS背后的iOS自动打包命令完全体系 30秒看懂xcodebuildAutoPacking-iOS背后的iOS自动打包命令完全体系【免费下载链接】AutoPacking-iOSiOS自动打包脚本 多项选择 一行上传指定位置项目地址: https://gitcode.com/gh_mirrors/au/AutoPacking-iOSxcodebuild是苹果官方提供的 Xcode 命令行工具而AutoPacking-iOS就是一款基于它的iOS 自动打包脚本在终端运行一次脚本通过菜单式多项选择自动完成清理、编译、归档、导出 ipa并一行命令上传到蒲公英或 Fir 等内测平台。本文带你 30 秒吃透 xcodebuild 的命令体系看懂这套 iOS 自动打包流水线背后的完整逻辑。xcodebuild 是什么iOS 自动打包的总开关 ️在 Xcode 里打包我们要手动点 Clean、点 Archive、点 Export再打开 Finder 拖 ipa 去上传平台。而 Xcode 的每一个菜单操作都有对应的 xcodebuild 子命令——这正是脚本化打包的前提。AutoPacking-iOS 的思路就是把这些命令按顺序串起来把人点菜单变成程序跑命令。Xcode 操作与 xcodebuild 命令对照表Xcode 界面操作xcodebuild 命令作用Product → Cleanxcodebuild clean清理旧编译产物保证干净构建⌘B编译工程xcodebuild -xcworkspace/-xcodeproj编译 xcworkspace 或 xcodeproj 工程Product → Archivexcodebuild archive归档生成.xcarchive文件夹点击 Exportxcodebuild -exportArchive依据 plist 配置导出 ipa 安装包四道核心命令串起完整打包流水线 AutoPacking-iOS 的打包流水线核心逻辑都在 autopacking.sh 中实现就是一条命令链xcodebuild clean先打扫战场避免旧缓存导致的诡异报错xcodebuild archive带-archivePath指定归档位置用-configuration Release/Debug选择构建类型通过CFBundleVersion动态注入编译版本号-destination generic/platformios表示针对真机平台xcodebuild -exportArchive用-exportOptionsPlist指定导出配置加-allowProvisioningUpdates自动更新描述文件产出 ipa上传分发脚本通过 curl 携带 API Key 调用蒲公英上传接口或执行fir publish上传到 Fir实现一行上传指定位置。导出后脚本还会自动把 ipa 重命名为应用名_版本号_日期时间如AutoPackingDemo_V1_20201013_184435.ipa并打印本次打包总耗时方便版本管理。ExportOptions.plist一次配置四种渠道通用 ⚙️xcodebuild 导出 ipa 时必须提供一份ExportOptions.plist它决定了签名方式、证书、Team ID 和导出渠道app-store / ad-hoc / enterprise / development。项目内置了AutoPacking/Plist/目录四份 plist 一一对应四种打包方式AdHocExportOptionsPlist.plist—— AdHoc 渠道包AppStoreExportOptionsPlist.plist—— App Store 正式包EnterpriseExportOptionsPlist.plist—— 企业签名包DevelopmentExportOptionsPlist.plist—— 开发测试包新手小技巧如果不确定字段怎么填先用 Xcode 手动打包并 Export 一次导出目录里就会生成一份现成的 ExportOptions.plist直接复制到指定路径即可。菜单式交互多项选择一次配好 ✅运行脚本后全程只需按数字序号选择 7 个选项选择Target多 Target 工程需提前在脚本中注册到__SELECT_TARGET_OPTIONS数组选择Release / Debug打包类型选择是否为.xcworkspace工程同时兼容 xcodeproj选择导出方式AdHoc / AppStore / Enterprise / Development选择 ipa上传位置不上传 / 蒲公英 / Fir / 两者都传是否自动打开产物文件夹是否立即开始打包选完最后一项整条 xcodebuild 命令链自动执行构建成功后终端会打印ARCHIVE SUCCEEDED与导出路径全程无需再碰 Xcode。快速上手3 步跑通 iOS 自动打包 获取代码git clone https://gitcode.com/gh_mirrors/au/AutoPacking-iOS拷贝并配置脚本把autopacking.sh放到工程根目录的AutoPacking/文件夹中全文搜索配置注释按需修改 Bundle identifier、蒲公英/Fir 的 Key、证书名称等Demo 工程可直接参考AutoPackingDemo/的结构运行打包在脚本目录执行sh autopacking.sh跟着菜单选完即可要求Xcode 10Xcode 11 会优先读取MARKETING_VERSION作为版本号新手常见报错30 秒定位 Entry CFBundleVersion Does Not Exist多半是 Info.plist 路径或名称被改动检查脚本中__CURRENT_INFO_PLIST_NAME是否与你项目中的实际文件一致多 Target 对应多个 Info.plist 时需自行处理对应关系。想打包多个 Target把 Target 依次写入__SELECT_TARGET_OPTIONS(1.Target1 2.Target2)并修改下方的 if-else 判断即可。多台电脑多证书环境在脚本中指定__CODE_SIGN_DISTRIBUTION证书名并打开CODE_SIGN_IDENTITY参数注释避免签错证书。小结xcodebuild 用clean → archive → exportArchive三道核心命令覆盖了 Xcode 打包的全部关键操作而 AutoPacking-iOS 把这条命令链封装成了菜单式交互多项选择配置打包参数一行命令完成导出与上传。看懂这个命令体系你不仅能玩转这套 iOS 自动打包工具也能轻松为自己团队写出专属的打包流水线。【免费下载链接】AutoPacking-iOSiOS自动打包脚本 多项选择 一行上传指定位置项目地址: https://gitcode.com/gh_mirrors/au/AutoPacking-iOS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表