用 Appuploader 上架 iOS 应用到 App Store:从证书到提审的完整实操记录
前阵子帮一个团队做发版,开发机全是 Windows,项目用的 Flutter。包打成了 .ipa,怎么传到 App Store?试了 Xcode Organizer——装不了。Transporter——只有 macOS 版。fastlane——底层依赖 xcrun,CI 也得挂 Mac 节点。一圈下来发现 Appuploader 能在 Windows 上把整条链路走完:证书创建、描述文件生成、IPA 上传、截图批量管理。下面按那天的操作顺序记下来。
证书和描述文件:在 Windows 上从零创建
上架前先配证书。正常流程要在 Mac 上用钥匙串生成 CSR、去 developer.apple.com 提交、下载 .cer、再导回钥匙串转成 .p12——整套依赖 macOS,Windows 上一步都走不了。Appuploader 把这几步压到一个界面里:进证书管理点添加,类型选 iOS Distribution,填个名称和 P12 密码,点确定就生成了。几分钟搞定,不需要接触钥匙串,也不需要理解 CSR 是什么。生成的 .p12 可以导出给团队其他成员共用,不同电脑之间共享同一套证书,不用每人各跑一遍申请。
描述文件也在同一个工具里处理。选对应的 App ID、勾上测试设备、点创建,完事。开发过程中如果需要新增测试设备,UDID 能自动读取当前连电脑的手机,省掉手动输入的步骤。这里要分清用途:上架必须用 Distribution 证书配 App Store 类型的描述文件,Development 只适合真机调试,拿它去传发布版会报错。
IPA 上传与通道选择
证书就位后进提交上传界面。选编译好的 .ipa 文件,右上角切上传通道——工具给了 1、2、3 和老通道四种。不同宽带运营商对这些通道的响应不一样,默认不行的就切老通道或者换移动热点重试,这个技巧解决过好几次上传卡住的问题。
填 Apple 上传专用密码(在 appleid.apple.com 后台生成的应用专用密码,不是登录密码),点上传。进度条走完后苹果会发邮件确认。这里有个细节:如果 App Store Connect 里还没创建好应用记录,上传会提示 “No suitable application records were found”——先去 App Store Connect 新建 App,填好 Bundle ID 和基本信息,再回来传。
如果要接 CI 流程,工具也提供命令行版本:
appuploader_cli -u your@apple.com -p xxxx-xxxx-xxxx -c 1 -f app.ipa
这条命令在 Windows、Linux 上都能跑,不用挂 Mac 节点,适合集成到 Jenkins 或 GitLab CI 里,每次提交代码后自动打包上传。
构建版本不显示怎么办
上传完在 App Store Connect 里看不到构建版本,这个情况碰到过几次。排查路径比较固定:先等 5-15 分钟让苹果处理,还没出现就检查版本号——CFBundleShortVersionString 或 CFBundleVersion 和之前提交的重复了,需要去 Info.plist 里改掉重打再传。另外检查一下账号:免费 Apple ID 只能生成开发证书做内测,传不了发布版,必须用已支付 99 美元年费的开发者账号。
还有一种情况是上传时选了开发和 Ad Hoc 描述文件,这种只适合内测分发,App Store 收不到。确定用的是 iOS Distribution 类型描述文件重新打包再传即可。
截图与元数据批量处理
提审前还要准备好截图和元数据。Appuploader 的批量上传功能可以一次选多张不同尺寸的截图,工具自动分到对应的设备位置和语言版本里。不需要在 App Store Connect 网页上逐张拖拽上传。如果项目同时支持 iPhone 和 iPad,批量上传时把两套尺寸的图放进对应目录就行。应用描述、关键词、多语言信息也在同一个页面管理,填完保存后数据会同步到开发者后台,省掉反复切换页面的操作。
提交审核
以上步骤都走通后,回到 App Store Connect 点提交审核。从一台 Windows 机器做完证书、上传 IPA、管理截图和元数据到最终提审,整条链路是通的——不需要专门为发版准备一台 Mac。团队里如果同时有 Mac 和 Windows 开发机,完全可以让 Windows 同事也参与发版操作,不用每次都等人借机器。

1371

被折叠的 条评论
为什么被折叠?



