iOS 构建与分发指南#
本指南介绍如何构建 iOS 应用以及不上架 App Store 的分发方式。
📋 目录#
- 前置要求
- iOS 构建
- 不上架商店的分发方式
- 常见问题
前置要求#
1. Apple Developer 账号#
必须拥有以下之一:
-
个人开发者账号:$99/年
- 适合个人开发者和小团队
- 支持 TestFlight 和 Ad Hoc 分发
- 最多 100 台设备(Ad Hoc)
-
企业开发者账号:$299/年
- 适合企业内部分发
- 支持企业内部分发(无需设备限制)
- 需要 D-U-N-S 编号
2. 注册 Apple Developer 账号#
- 访问 Apple Developer
- 点击 "Enroll" 注册
- 选择账号类型(个人/企业)
- 完成支付和验证
3. 配置证书和配置文件#
首次构建时,EAS Build 会自动处理:
- 证书(Certificates)
- 配置文件(Provisioning Profiles)
- App ID
你只需要在构建时登录 Apple Developer 账号即可。
iOS 构建#
方法一:使用 EAS Build(推荐)#
EAS Build 是 Expo 官方推荐的云端构建服务,无需本地 macOS 和 Xcode 环境。
1. 登录 Expo 账号(首次使用)#
cd apps/app-rn-ts
pnpm run eas:login
2. 配置项目(首次构建)#
pnpm run eas:configure
3. 构建 iOS#
开发版(使用开发环境 API):
pnpm run build:ios:dev
预览版(使用生产环境 API,用于测试):
pnpm run build:ios:preview
生产版(用于 App Store 或 TestFlight):
pnpm run build:ios:prod
4. 构建过程中的操作#
首次构建 iOS 时,EAS 会提示你:
-
登录 Apple Developer 账号
- 输入 Apple ID 和密码
- 如果启用了两步验证,需要输入验证码
-
选择证书管理方式
- 自动管理(推荐):EAS 自动创建和管理证书
- 手动管理:需要自己上传证书
-
等待构建完成
- 构建时间通常为 15-30 分钟
- 构建完成后会提供下载链接
5. 下载 IPA 文件#
构建完成后,你可以:
方法二:EAS 本地构建(需要 macOS)#
如果你有 macOS 系统,可以使用本地构建。
前置要求#
- macOS 系统:需要 macOS 10.15 或更高版本
- Xcode:需要安装 Xcode(从 App Store 下载)
- CocoaPods:
sudo gem install cocoapods
- Docker Desktop:确保已安装并运行
构建步骤#
开发版:
pnpm run build:ios:dev:local
预览版:
pnpm run build:ios:preview:local
生产版:
pnpm run build:ios:prod:local
不上架商店的分发方式#
iOS 应用不上架 App Store 有以下几种分发方式:
1. TestFlight(推荐,最简单)#
适用场景:
- 内部测试
- Beta 测试
- 小范围分发(最多 10,000 名测试用户)
优点:
- ✅ 官方渠道,稳定可靠
- ✅ 自动更新通知
- ✅ 无需手动安装证书
- ✅ 支持最多 90 天的测试期
缺点:
- ❌ 需要测试用户有 Apple ID
- ❌ 测试期限制 90 天(可续期)
使用步骤:
-
构建生产版本:
pnpm run build:ios:prod
-
提交到 TestFlight:
eas submit --platform ios --profile production
或者访问 Expo Dashboard 提交
-
在 App Store Connect 中配置:
-
测试用户安装:
- 测试用户会收到邮件邀请
- 下载 "TestFlight" App
- 接受邀请后即可安装你的应用
2. Ad Hoc 分发#
适用场景:
- 小范围分发(最多 100 台设备)
- 不需要 TestFlight 的测试场景
- 企业内部测试
优点:
- ✅ 不需要 App Store Connect
- ✅ 直接安装 IPA 文件
- ✅ 适合小范围分发
缺点:
- ❌ 需要手动添加设备 UDID
- ❌ 最多 100 台设备限制
- ❌ 需要手动安装证书
使用步骤:
-
获取设备 UDID:
- 方法一:在 iPhone 上访问 udid.tech
- 方法二:连接 iPhone 到 Mac,打开 iTunes/Finder,查看设备信息
-
在 Apple Developer 中添加设备:
- 登录 Apple Developer
- 进入 "Certificates, Identifiers & Profiles"
- 选择 "Devices" → "Register a New Device"
- 添加设备 UDID
-
构建 Ad Hoc 版本:
# 修改 eas.json,添加 ad-hoc 配置
eas build --profile preview --platform ios --distribution ad-hoc
-
分发 IPA 文件:
- 下载构建好的 IPA 文件
- 通过以下方式分发:
- AirDrop:直接发送到 iPhone
- 邮件:发送 IPA 文件
- 网盘:上传到网盘,提供下载链接
- 企业内部分发平台:如蒲公英、fir.im 等
-
安装 IPA:
- 方法一:使用 AltStore(推荐)
- 在 iPhone 上安装 AltStore
- 通过 AltStore 安装 IPA 文件
- 方法二:使用 3uTools 或 爱思助手
- 连接 iPhone 到电脑
- 使用工具安装 IPA 文件
- 方法三:使用 Apple Configurator 2(Mac)
- 连接 iPhone 到 Mac
- 使用 Apple Configurator 2 安装
3. 企业内部分发(需要企业账号)#
适用场景:
- 企业内部应用
- 大量设备分发(无设备限制)
- 不需要 App Store 审核
优点:
- ✅ 无设备数量限制
- ✅ 不需要添加设备 UDID
- ✅ 适合企业内部分发
缺点:
- ❌ 需要企业开发者账号($299/年)
- ❌ 需要 D-U-N-S 编号
- ❌ 需要企业内部分发服务器
使用步骤:
-
构建企业版本:
eas build --profile production --platform ios --distribution enterprise
-
配置企业内部分发:
- 需要配置 HTTPS 服务器
- 提供 manifest.plist 文件
- 创建下载页面
-
用户安装:
- 用户通过 Safari 访问下载页面
- 点击安装链接
- 在设置中信任企业证书
常见问题#
Q1: 没有 Apple Developer 账号可以构建 iOS 吗?#
A: 不可以。iOS 应用必须使用 Apple Developer 账号签名才能安装到真机。没有账号只能构建模拟器版本。
Q2: 个人开发者账号可以分发多少设备?#
A:
- Ad Hoc:最多 100 台设备
- TestFlight:最多 10,000 名测试用户
Q3: TestFlight 测试期是多久?#
A: 每个构建版本有 90 天测试期,到期前可以上传新版本续期。
Q4: Ad Hoc 分发的 IPA 可以直接安装吗?#
A: 不可以。需要:
- 设备 UDID 已添加到 Apple Developer
- 使用 AltStore、3uTools 等工具安装
- 或者在 Mac 上使用 Apple Configurator 2
Q5: 企业账号和个人账号有什么区别?#
A:
- 个人账号:$99/年,适合个人开发者,支持 TestFlight 和 Ad Hoc
- 企业账号:$299/年,适合企业,支持企业内部分发(无设备限制)
Q6: 如何查看设备 UDID?#
A:
- 方法一:访问 udid.tech(最简单)
- 方法二:连接 iPhone 到 Mac,打开 iTunes/Finder
- 方法三:在 iPhone 设置 → 通用 → 关于本机 → 查看标识符
Q7: 构建失败怎么办?#
A:
- 检查 Apple Developer 账号是否有效
- 检查证书是否过期
- 查看构建日志中的错误信息
- 尝试重新构建
推荐方案#
根据你的需求选择合适的方案:
| 场景 |
推荐方案 |
账号要求 |
| 内部测试(< 100 人) |
Ad Hoc |
个人/企业 |
| Beta 测试(< 10,000 人) |
TestFlight |
个人/企业 |
| 企业内部分发(大量设备) |
企业内部分发 |
企业账号 |
| 小范围分发(简单快速) |
Ad Hoc + AltStore |
个人/企业 |
相关链接#