WWDC Quick Look 💓 By SwiftGGTeam
Explore App Store Connect for spatial computing

Explore App Store Connect for spatial computing

观看原视频

Highlight

visionOS App Store 默认自动上架所有兼容的 iPad/iPhone app,开发者无需改代码或提交新构建;想要原生体验则可通过创建新 app 或添加平台实现通用购买;TestFlight 完整支持 visionOS 并提供平台切换、自动更新和截图反馈功能。


核心内容

visionOS App Store 上线时,每个开发者都面临同一个问题:我的 app 怎么出现在这个新平台上?

Apple 给了三条路。第一条最简单:什么都不做。所有兼容的 iPad 和 iPhone app 会自动在 visionOS App Store 上架,不需要改代码,不需要提交新构建。第二条路是为现有 app 添加 visionOS 平台支持,实现通用购买——用户在 iPhone 上买了,visionOS 上也能用,内购也互通。第三条路是创建一个全新的 visionOS app,从头开始为空间计算设计。

不管选哪条路,最终都要通过 App Store Connect 管理上架流程。这场 session 把整个流程拆解成了三个环节:上架策略、TestFlight 测试、隐私标签更新。

三种上架策略

策略一:自动兼容(零成本上线)。所有兼容的 iPad 和 iPhone app 默认自动出现在 visionOS App Store 上。开发者无需任何操作。如果某个 app 在 visionOS 上体验不好,可以在 App Store Connect 的 Pricing and Availability 页面,找到 “iPhone and iPad Apps on visionOS” 区域,关掉 “Make this app available” 开关。也可以在 Apps 页面点击省略号按钮,选择 “iOS Apps on visionOS Availability”,批量管理所有 app 的可用性。

策略二:添加 visionOS 平台(通用购买)。在现有 app 记录左侧边栏点击 “Add Platform”,选择 visionOS,然后上传 visionOS 版本的构建。用户购买一次,所有平台都能用,内购也跨平台共享。注意:一旦你发布了 visionOS 原生版本,它会替换掉之前自动兼容的 iOS 版本——用户看到的是你的原生 app,不再是 iPad 兼容版。

策略三:创建新 app。点击 Apps 页面左上角加号,选择 “New App”,在平台列表中选择 visionOS。适用于全新品牌、或者想要与现有 app 不同的定价和可用性策略的场景。创建时需要填写名称、Bundle ID 和 SKU。

TestFlight 全面支持 visionOS

TestFlight 的 visionOS 支持和其他平台完全一致。你可以创建内部或外部测试组,通过邮件或公开链接邀请测试者。如果为现有 app 添加了 visionOS 平台,可以直接用已有的测试组——测试者会自动获得多平台的构建。

每个测试组有一个开关,控制该组测试者能否在头显上安装兼容的 iPad/iPhone app。这样你可以分批扩展测试范围:先让核心测试者验证原生 visionOS 版本,再逐步放开兼容 app 的测试。

测试者的设备体验

测试者在 visionOS 上打开 TestFlight,侧边栏会列出所有可安装的 app——包括 visionOS 原生 app 和兼容的 iOS app。不兼容的 app 会被归入单独的 “iOS-only” 分类。

当开发者同时提供了 visionOS 和 iOS 版本的测试构建,app 页面顶部会出现一个切换按钮,让测试者选择安装哪个版本。App 详情页会显示描述和设备兼容性信息。往下滚动进入 App Settings,可以自定义通知、开启自动更新(新构建自动下载安装)。

Beta 版 app 的名字旁边有一个黄点标记,和其他平台一致。兼容的 iPad/iPhone beta app 会被放进一个专门的文件夹,同样带黄点标记。

截图反馈与崩溃日志

测试者在 visionOS 上同时按下 Digital Crown 和顶部按钮即可截图。然后在 TestFlight 中选择 app,点击 “Send Feedback”,描述问题并附上截图。截图可以在提交前裁剪或标注。

如果 beta app 崩溃了,TestFlight 会主动提示测试者发送反馈。测试者描述操作步骤,崩溃日志会自动随反馈一起提交。

开发者端分析

在 App Store Connect 中查看反馈时,可以按平台和构建版本筛选。反馈详情包括截图、描述文本,崩溃日志可以下载,也可以直接在 Xcode Organizer 中打开。

测试者参与度指标在两个地方可看:App Store Connect 网页版和移动版。指标包括某个版本有多少测试者安装了、有多少人真正启动了、有多少人提交了崩溃或截图反馈。可以按构建版本查看,也可以按测试组查看单个测试者的参与情况。

隐私营养标签新增三项数据类型

visionOS 引入了三类新的数据收集类型,需要开发者在 App Privacy 页面如实申报:

  • Environment Scanning:app 是否收集用户周围环境数据(网格、平面、场景分类、图像检测)
  • Hands(Body 分类下):app 是否收集手部结构和手部运动数据
  • Head(Body 分类下):app 是否收集头部运动数据

这些数据会展示在 App Store 产品页面上,让用户了解 app 收集了什么数据、怎么使用。


详细内容

添加 visionOS 平台到现有 app(02:15

假设你有一个叫 “Mountain Climber” 的 iOS app,现在想为 visionOS 提供原生体验。操作流程:

  1. 在 App Store Connect 的 Apps 页面,选择 Mountain Climber
  2. 左侧边栏点击 “Add Platform”
  3. 在弹出的对话框中选择 visionOS
  4. 点击 Add
  5. 开始上传 visionOS 构建

不需要创建新的 app 记录。用户跨平台购买和内购自动共享。

关键点:

  • 添加平台后,app 名称和 URL 在所有平台保持一致
  • 开启自动下载的用户会自动在各设备上获得 app
  • 发布 visionOS 原生版本后,它会替换掉之前在 visionOS App Store 上的 iPad 兼容版本

管理兼容 iPad/iPhone app 的可用性(06:30

批量管理入口:Apps 页面左上角省略号按钮 → “iOS Apps on visionOS Availability”。这里可以看到所有兼容 app 的列表,逐个开关控制是否在 visionOS 上显示。

单个 app 管理入口:进入 app 的 Pricing and Availability 页面 → “iPhone and iPad Apps on visionOS” 区域 → 切换 “Make this app available”。

关键点:

  • 默认全部自动可用,不需要逐一开启
  • 关闭不可逆——如果 app 体验差,用户看到后评分会受影响,不如先关掉
  • 页面会显示当前版本和即将发布的版本是否兼容

TestFlight 测试组配置(09:45

TestFlight 中每个测试组有一个 “iPhone and iPad Apps on visionOS” 开关,控制该组测试者能否在头显上安装兼容 app。

这个设计支持渐进式测试:

第一批:内部测试组 → 只测原生 visionOS 版本
第二批:外部核心测试者 → 开放兼容 app 安装
第三批:公开链接测试者 → 全部开放

关键点:

  • visionOS 构建可以分发到已有测试组,无需新建
  • 兼容 app 的测试开关按组独立控制
  • 测试者从同一个 TestFlight app 查看所有可测试的版本

测试者反馈流程(13:20

截图反馈步骤:

  1. 同时按下 Digital Crown + 顶部按钮截取屏幕
  2. 打开 TestFlight → 选择 app → 点击 “Send Feedback”
  3. 填写问题描述
  4. 附加截图(可裁剪和标注)
  5. 提交

崩溃反馈:

  • app 崩溃后 TestFlight 自动弹出提示
  • 测试者描述触发崩溃的操作步骤
  • 崩溃日志随反馈自动提交

关键点:

  • 截图可以在 TestFlight 内直接标注,不用跳转到其他 app
  • 崩溃反馈是自动触发的,不需要测试者手动去菜单里找
  • 开发者可以在 App Store Connect 中按平台和构建版本筛选反馈

隐私营养标签新字段(16:50

在 App Store Connect 的 App Privacy 页面,Data Types 部分新增了以下选项:

分类数据类型何时勾选
Environment ScanningApp 收集周围环境的网格、平面、场景分类或图像检测数据
BodyHandsApp 收集手部结构和手部运动数据
BodyHeadApp 收集头部运动数据

这些数据类型不仅适用于 visionOS app——如果其他平台的 app 也收集这类数据(例如 iPhone 的 LiDAR 扫描),同样需要申报。

关键点:

  • Environment Scanning 是一个独立的数据类型分类
  • Hands 和 Head 都属于 Body 大类下的子类型
  • 数据使用方式(用于追踪、关联到用户、不关联到用户等)需要逐一说明

核心启发

  • 做什么:检查你的 iPad/iPhone app 在 visionOS 上的兼容性,关掉体验差的 app。为什么值得做:默认所有兼容 app 都会自动上架,用户评分和口碑直接受影响。不兼容的 app 在 visionOS 上可能出现 UI 错位或交互问题。怎么开始:在 App Store Connect → Apps → 省略号 → “iOS Apps on visionOS Availability” 逐一审核,不确定的先关掉,等测试验证后再开启。

  • 做什么:为现有 iOS app 添加 visionOS 平台,实现通用购买。为什么值得做:一次购买跨平台可用,提升用户付费意愿;不需要创建新品牌,URL 和排名继承现有 app。怎么开始:在 app 的左侧边栏点击 “Add Platform”,选择 visionOS,上传包含 visionOS 目标的 Xcode 构建。

  • 做什么:利用 TestFlight 的 “iPhone and iPad Apps on visionOS” 开关做渐进式测试。为什么值得做:先让内部测试者验证原生 visionOS 版本,稳定后再开放兼容 app 给外部测试者,避免早期测试被兼容性问题干扰。怎么开始:创建内部测试组时关闭兼容 app 开关,等原生版本测试稳定后,在外部测试组中开启。

  • 做什么:更新隐私营养标签,添加 visionOS 相关的数据收集声明。为什么值得做:Environment Scanning、Hands、Head 这三类数据是 visionOS 特有的隐私敏感项,漏填会导致审核被拒。怎么开始:进入 App Store Connect → App Privacy → Data Types,检查是否勾选了这三项,并根据实际数据使用方式填写说明。

  • 做什么:利用 TestFlight 的自动更新功能提高测试效率。为什么值得做:测试者不用手动下载每个新构建,减少”测试者还在测旧版本”的情况。配合构建更新说明,测试者每次打开 app 都能看到要关注哪些变化。怎么开始:在 TestFlight app 的 App Settings 中引导测试者开启自动更新选项;每次上传构建时填写测试要点说明。


关联 Session

评论

GitHub Issues · utterances