详细解析,iOS 应用上架 App Store 的完整流程与指南

前两周帮一个做跨平台 App 的团队处理上架,代码、打包、测试都搞定了,卡在最后一步:怎么把 IPA 送到 App Store。团队里没人用过 Mac,翻了不少帖子都默认你有 Xcode,这步门槛其实没那么高。把整条 iOS 应用上架 App Store 的完整流程拆开看,就是注册账号、制作证书、创建描述文件、配置 Bundle ID、打包、上传、等审核这几个环节,每个环节都有明确的操作,下面按顺序过一遍。

注册开发者账号

注册开发者账号是第一步,个人和公司账号年费都是 99 美元,注册时用 Apple ID 登录开发者网站,同意协议就能开通。公司账号还要准备 D-U-N-S 编码。免费账号能创建开发证书、做内测,但没法提交上传发布,也不能用 Apple 登录、支付、推送这些能力,正式上架必须升级付费账号。

制作证书

证书是打包和上架的通行证,分开发证书(iOS App Development)和发布证书(iOS Distribution)两种,生成的文件是 P12 格式。在 Mac 上这步要打开钥匙串助手,请求证书签发请求文件再传到开发者后台,跨平台团队用 **Appuploader **的话,在 Windows 上输入证书名称、邮箱和密码就能直接生成,不用碰钥匙串,证书还能同步到不同电脑使用,多人协作时省不少事。注意证书密码要记住,打包签名时要当私钥密码用,忘了只能重新生成。

创建描述文件

描述文件把应用和证书、设备绑定在一起,类型选 App Store 是发布用,选 Development 是开发测试用。创建时先要有 Bundle ID,一个应用对应一个描述文件,多个应用可以共用一个证书。做开发类型时要把测试设备加进描述文件,不然编译好的应用装不上手机,报错多半是设备没关联,更新描述文件重新编译就好。

打包 IPA

打包环节,Xcode 用户直接 Archive 导出 IPA;跨平台项目用 HBuilder、Flutter 这些工具打包也没问题,产物都是 IPA 文件,关键是签名用的证书和描述文件要选对,打包时填入 P12 的私钥密码。

上传到 App Store

上传是很多人卡住的地方。Xcode 里可以用 Organizer 上传,Mac 上还有 Application Loader,但这两个都依赖 Mac 环境。Appuploader 在 Windows、Linux、Mac 上都能直接上传:选择 IPA 文件,设置 Apple 专用密码(不是账号密码,去 appleid.apple.com 的账号安全里生成),再选上传通道(1、2、3 和老通道),网络受限时切换通道或者换移动热点重试。命令行用户还能用 appuploader_cli 上传,参数指定账号、专用密码和 IPA 路径,适合集成进发布脚本,流程固定后全自动。

提交审核

上传过程中有两个常见坑。一个是报错 ERROR ITMS-90189 版本号重复,检查 build 版本号是不是和之前上传过的撞了,换一个递增的版本号重新打包再传;另一个是上传成功后 App Store Connect 里迟迟看不到构建版本,先等几分钟再刷新页面,或者确认上传用的账号和创建 App 记录的账号是不是同一个,两边账号不一致也会导致版本不显示。

版本出现后,可以先发 TestFlight 内测一轮,再填写审核信息提交。审核周期不定,快的一两天,慢的一周,提交前备好隐私政策链接、测试账号、权限用途说明这些材料,能少几次被拒后往返修改。

整条 iOS 应用上架 App Store 的流程走下来,真正绕不开 Mac 的环节没有------打包在跨平台工具里完成,证书、描述文件、上传都有对应的跨平台方案。把每个环节用的工具定下来,第一次上架之后,后面每次发版就是重复这条链路。

相关推荐
kayyoo20 分钟前
CoordinatorLayout解析(二): 结合CollapsingToolbarLayout实现Toolbar折叠效果
android
数据知道2 小时前
移动端渗透测试流程:Android APK 逆向与动态调试
android·web安全·网络安全
我命由我123453 小时前
人脸识别 - 勒克斯(光线照射到物体表面上的明亮程度)
android·java·学习·java-ee·人脸识别·学习方法·android runtime
聚美智数4 小时前
护照OCR识别-护照图像识别-护照OCR文字识别-护照识别OCR-护照信息识别-护照OCR
android·ocr
_瑞4 小时前
APM_寄存器
ios·汇编语言
宠友信息5 小时前
内容社区源码开发实践解析,用Spring Boot打造1:1仿小红书源码平台
java·spring boot·redis·websocket·mysql·spring·uni-app
码农coding6 小时前
android12 点击桌面应用图标启动Activity流程
android
johnsong6 小时前
深度拆解:150M循环模型如何用循环推理击败大Transformer
android·深度学习·transformer
2501_916008897 小时前
iOS App 请求地址查看,不用配置看到 App 调了哪些接口
网络协议·计算机网络·网络安全·ios·adb·https·udp
CedarQR7 小时前
云卓 G20 遥控器 Android 开发实录:从 USB 设备到读取摇杆/按键通道值
android·linux·无人机