ios:区分 App Store / Ad Hoc / Development

一、三种iOS打包分发类型完整区分(结合你Xcode Cloud场景)

1. Development 开发包(真机调试包)

用途

本地插iPhone真机、Xcode直接Run安装调试用,绝对不能用来上传TestFlight/上架App Store

限制

  1. 必须把测试设备UDID提前添加到开发者后台描述文件;
  2. 一台账号最多绑定100台测试iPhone;
  3. 有效期1年;
  4. 只能Xcode本地安装,无法通过链接OTA安装。

你的场景作用

Xcode Cloud导出这个包基本没用,忽略即可。

2. Ad Hoc 企业内测包(你报错70的元凶)

用途

小范围批量内测,不用每个人加UDID,给非开发者人员装包。

限制

  1. 单版本最多安装 100台设备
  2. 包有效期90天;
  3. 需要用户手动在「设置-通用-VPN与设备管理」信任证书;
  4. Xcode Cloud苹果自动托管签名,导出Ad Hoc极易权限不匹配,直接报 exit code 70 错误(就是你刚才的报错)。

你的场景结论:完全不需要,直接关闭导出即可。

3. App Store Connect 正式包(你唯一要用的)

用途

✅ 上传TestFlight 全员内测

✅ 后续直接提交App Store官方审核上架

特点

  1. 无设备数量限制,无数人安装;
  2. 长期有效,无过期时间;
  3. 苹果官方签名,云端Xcode26编译完全合规;
  4. TestFlight安装无需手动信任证书,一键安装。

二、极简对照表

类型 核心使用场景 是否用于TestFlight/上架 Xcode Cloud是否推荐导出
Development Xcode本地真机调试 ❌ 不可以 不勾选
Ad Hoc 小批量OTA内测 ❌ 不可以 取消勾选(避免70报错)
App Store Connect TestFlight内测 + App Store上架 ✅ 唯一正确 只选这个

三、回到你当前Workflow最终正确配置

  1. Distribution Preparation:App Store Connect
  2. 构建完成只会导出正式上架包,不再执行Ad Hoc导出
  3. 彻底消除 command exited with non-zero exit-code:70 警告
  4. 自动推送到App Store Connect → TestFlight后台,直接发测试链接给别人安装
相关推荐
Anhty3 分钟前
2026九月最新变声器测评:iOS安卓双端适配,低延迟运行更稳定
android·人工智能·功能测试·ios·智能手机
_瑞9 小时前
APM_OOMDetector
ios
秋雨梧桐叶落莳9 小时前
【iOS】从源码深入理解RunLoop机制
macos·ios·objective-c·cocoa·cocoapods·uikit
烂蜻蜓10 小时前
Flask入门教程(二十七):Session Interface API——自定义Session存储后端
网络·ios·flask
用户380341658829710 小时前
VideoToolbox 硬编解码的十个坑:为什么它几乎从不报错
ios
bcbnb11 小时前
Flutter-Notebook代码混淆:Android与iOS平台安全配置
后端·ios
2501_9151063212 小时前
第一次开发 iPhone App,可能碰到的问题,解决办法
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
2501_9151063212 小时前
iOS数据采集技术详解:从性能监控到崩溃分析的全链路实践
android·ios·小程序·https·uni-app·iphone·webview
末代iOS程序员华仔1 天前
iOS 5.6 条例解决方法
flutter·ios·swift
末代iOS程序员华仔1 天前
Guideline 5.6 - Developer Code of Conduct
flutter·ios·swift