App Store和 TestFlight 分发

重要

Visual Studio App Center 计划于 2025 年 3 月 31 日停用。 虽然可以继续使用 Visual Studio App Center,直到它完全停用,但你可以考虑迁移到几个建议的替代方法。

详细了解支持时间线和替代方法。

使用 App Center 中的 Fastlane 将 iOS 应用升级发布到 App Store 和 TestFlight。

先决条件

  • 必须通过 App Store Connect 门户发布 iOS 应用程序的第一个版本。
  • 使用App Store预配配置文件和生产证书编译应用。
  • 应用应准备好提交并通过App Store准则
  • 有效的 Apple 开发人员计划帐户,或将 Apple ID 添加为团队App Store Connect 帐户中的管理员。
  • 连接的帐户必须具有应用管理器权限才能发布应用。

有关详细信息,请查看 Apple 应用分发指南

设置 App Center 与 App Store Connect 之间的连接

注意

可以使用 Apple 凭据或 App Store Connect API 密钥连接到 App Store Connect。 建议使用连接 API 密钥来提高稳定性,并在 Apple 开发人员门户中设置密钥的访问级别。 此外,不再需要像使用凭据、2FA 和应用特定密码那样每 30 天续订一次连接。

  1. 在“分发”下选择“ 应用商店 ”。

  2. 在页面中间,单击“ 连接到应用商店 ”按钮。

  3. 从打开的面板中选择“App Store连接”作为存储类型。

  4. 单击右下角的 “下一步 ”。

  5. 使用 App Store Connect API 密钥或 Apple 开发人员帐户 (一次性活动) 登录,然后单击“连接”。

  6. 成功登录后,如果 Apple 帐户是多个团队的成员,则可以选择团队以关联生成。 如果 Apple 帐户仅是单个团队的成员,则选择默认为单个可用团队。

  7. 现在,所选团队的应用列表可供选择。

  8. 选择要升级的应用。

  9. 将自动设置所选应用的应用商店连接

    • 名为 Production 的App Store连接。
    • 名为“连接用户”的内部测试人员的 TestFlight连接App Store
    • 外部测试人员根据在 App Store Connect 控制台中创建的外部组对连接进行分组。
  10. 设置此连接是应用在 App Center 中的一次性过程。

在下拉菜单中选择“目标”以获取上传说明

注意

将传递文件提交到 App Store Connect 时,App Center 默认为:

 add_id_info_uses_idfa: false
 export_compliance_uses_encryption: false
 export_compliance_encryption_updated: false

添加双因素身份验证

如果 Apple 帐户启用了双重身份验证,App Store Connect 需要特定于应用的密码作为安全性。 可以在“帐户设置”“开发人员帐户”>中添加特定于应用的密码。

提示

只有 App Store 和 TestFlight 需要特定于应用的密码。 只有启用了双重身份验证的 Apple ID 才能选择 “更新特定于应用的密码”。

  1. 将鼠标悬停在 “帐户 ”列表中的某个项上。
  2. 单击列表右侧的三个垂直点
  3. 选择 “更新特定于应用的密码”。
  4. 使用 Apple ID 门户生成特定于应用的密码。
    • 该名称用于记住哪个服务或应用正在使用特定于应用的密码。
  5. 复制生成的特定于应用的密码,并将其粘贴到对话框中。
  6. 单击“ 更新”保存。

通过 CLI 发布

警告

需要使用 App Center CLI 2.7 或更高版本才能使用此功能。

使用 CLI 作为将 App Center 的应用商店连接作为 CI/CD 设置的一部分集成(例如 Jenkins 或 Go CI)的一种简单方法。

需要先与 App Store建立连接,然后才能使用 CLI 并编译兼容的二进制文件。

可以使用 list 命令列出商店,如下所示:

appcenter distribute stores list \
--app {app_owner}/{app_name} \
--output json

你将得到如下所示的结果:

[["Production","apple","production"],["App Store Connect Users","apple","testflight-internal"]]

它是我们将在最后一步使用的 Microsoft Store 列。

最后一步是通过运行以下命令来发布应用:

appcenter distribute stores publish \
--file /path/to/file.ipa \
--store Production \
--app {app_owner}/{app_name} \
--release-notes "Some note."

需要像 list 命令一样填写空白。 可以改用 --release-notes-file 而不是静态发行说明。 发行说明文件是使用 UTF-8 编码的纯文本文件。

为什么 Apple ID 需要管理员角色

Apple 至少需要管理员角色才能 创建应用和提交版本上传版本请参阅此表,了解权限

调试失败的发布

如果发布失败,可以下载详细的 Fastlane 日志。 通过单击“ 状态 > 下载快速日志”,可以在详细的发布页上找到这些日志。

重新身份验证失败

在极少数情况下,重新身份验证失败时,可以通过访问 “帐户设置” 部分并删除 Apple ID 来解决此问题。 然后,访问应用的应用商店连接页面并选择连接以建立连接。