设备注册和应用重新签名

重要

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

详细了解支持时间表和替代方案

在此页上,你可以阅读将 iOS 应用程序分发给特定测试人员时要采取的步骤。 了解什么是设备注册、预配和应用重新签名。 还可以了解如何使用 App Center 功能使此过程尽可能无痛。 最后,你可能会遇到一些常见问题的解决方案。

应用签名、重新签名和设备预配

开发人员在分发时根据 Apple 的要求对应用进行安全签名。 通过 Xcode、App Center 或 iTunes 应用商店进行分发的要求相同。 代码签名是确保没有人篡改你的应用的预防措施。 可以在 Apple 文档中阅读 有关应用签名的详细信息。

下图显示了 App Center 中整个应用重新签名流。 让我们更详细地介绍这些步骤。

App Center 设备注册和应用重新签名流

仅当想要将 iOS 应用分发到特定测试设备时,应用重新签名才适用。 在关系图中,你想要将应用版本分发到测试器 1 和测试器 2 的设备。 为此,请使用即席预配配置文件对应用进行签名。 此预配配置文件包含唯一设备标识符列表(UDID)。 只有该列表中的设备已“预配”或能够安装 .ipa。 App Center 可以检测设备是否已预配,因为我们知道测试人员首次向 App Center 注册其设备的 UDID。 如果我们检测到测试人员正在使用的设备不在要下载的 .ipa 的预配设备列表中,则会显示消息“开发人员正在为设备使用版本”。

知道要用于测试的设备后:

  1. 在 Apple 开发人员帐户中注册设备。
  2. 将它们添加到预配配置文件。
  3. 生成新的预配配置文件。
  4. 下载预配配置文件。
  5. 使用此配置文件生成应用。

当另一个新设备出现(例如关系图中具有 UDID 3 的设备)时,重复这些步骤。 这可能不方便,你不希望更改持续集成系统,也不希望开发人员始终将新设备添加到配置文件中并发布新内部版本。 这是重新登录的地方。 这意味着使用现有的应用程序生成,并使用不同的预配配置文件再次对其进行签名(重新签名),因此无需创建新的生成。

App Center 可帮助你完成此过程,还可以自动执行此过程。 这些是图中所示的手动和自动步骤,使用 UDID 3 预配设备。 App Center 可帮助你将测试人员设备 ID 注册到 Apple 开发人员帐户中,创建新的预配配置文件,并从 App Center 门户中重新对应用进行签名。 App Center 需要访问 Apple 开发人员帐户才能注册设备。

若要手动将设备添加到现有版本,可以使用 通讯组页面上的“注册设备 ”。 请参阅 设备注册

若要自动添加设备,请在通讯组设置下启用 “自动管理设备 ”。 此选项只能通过应用级通讯组进行访问,并且不能通过全局组访问。 可以通过在 App Center 中选择应用,然后单击“分发来访问应用级通讯组。 在“分发”下 ,单击“组 ”,然后单击要管理的特定组。 还可以选择在分发新版本时自动添加设备。 此选项位于 向导中的“设备” 步骤中,用于分发新版本。

App Center 将新设备添加到预配配置文件中的列表中,并使用此预配配置文件重新对应用进行签名。 现在,新设备还可以安装应用。 这些是关系图中的底部步骤。

重新签名功能

使用重新登录 App Center 时需要注意的一些事项:

  • 自动管理组中的设备仅适用于分发到非公共组和非共享组。
  • 如果要分发给单个用户,请手动注册其设备并重新对应用进行签名。 若要使用本文中提到的工具,必须先将测试人员添加到组中。
  • 如果将多个组添加到发布,请使用“自动管理组设置”下的设备单独配置每个组。
  • 只有使用开发人员或临时配置文件签名的 iOS 应用才需要管理设备。

先决条件

在使用 App Center 的设备功能之前,应:

  1. 具有用于原始应用签名的生产证书。
  2. 拥有拥有 帐户持有者、管理员或应用管理器角色的 Apple 开发人员帐户的凭据。
  3. 从 Xcode 分发应用时,使用 手动管理签名 ,而不是 自动管理签名

设备注册

注册设备意味着将其包含在 Apple 开发人员门户中的设备列表,然后可包含在预配配置文件中。 若要注册设备,请选择至少一个尚未预配的设备并导航到 “设备 ”选项卡的通讯组。你将在此处看到状态为“未预配”的设备,顶部显示一条消息,指出存在未预配的设备。 按照以下步骤注册设备:

  1. 选择“ 注册设备 ”按钮。
  2. 对话框会提示你在 Apple 开发人员门户中使用的用户名和密码。
  3. 使用 Apple 用户名和密码登录后,App Center 会将未预配的设备添加到 Apple 开发人员帐户和版本预配配置文件。
  4. (可选)可以上传 .p12 文件以重新对应用进行签名,并将其分发到新添加的设备。 详细了解 如何生成 .p12 文件

如果想要单独处理使用更新的预配配置文件重新生成应用,仍可使用 App Center 在 Apple 开发人员门户中自动注册测试人员的设备,而无需重新签名步骤。 为此,请 取消选中“重新对应用 签名”,并使用审阅屏幕上的按钮下载更新的预配配置文件。 还可以通过 Xcode 或 Apple 开发人员门户下载预配配置文件。

分发新版本

将新版本分发到未启用自动设备管理的组时, 设备 步骤是向导的一部分。 该步骤将检查通讯组中是否有未预配的设备;如果发生这种情况,可以选中 “注册设备”并重新签名应用 复选框。 然后,App Center 会为你运行三个操作:

  1. 在 Apple 开发人员门户中注册新设备 ID。
  2. 将设备添加到预配配置文件并下载它。
  3. 重新对上传的二进制文件进行签名,以便所有测试人员都可以安装它。

该流需要 Apple 开发人员门户的用户名和密码,以及用于在生成时对应用进行签名的证书。 将证书作为导出的 .p12 文件提供。 详细了解 如何生成 .p12 文件。 如果已在 App Center 中保存 Apple ID 和证书,可以从下拉菜单中选择它。

有关用户名和密码的隐私问题

将 Apple 凭据和签名证书添加到 App Center 时,我们将使用安全连接。 App Center 将信息存储在加密的保管库中。 任何用户都无法从保管库下载或检索敏感信息。

如果你提供这组凭据和证书,则它会自动提供给应用协作者,但仅适用于该特定服务。 例如,开发人员 X 向通讯组“Tester”添加凭据和证书。然后,当开发人员 Y 将新版本分发到“测试人员”组时,默认情况下会选择 X 的用户名、密码和证书。 App Center 将将它们用于开发人员 Y。App Center 仅在交易期间使用 Apple ID,并且不会将其用于任何其他内容。

Apple 设备注册限制

每个 Apple 开发人员帐户对于每个设备类型的设备都有有限数量的点。 Apple 适用于五种设备类型:iPad、iPhone、iPod、Apple TV 和 Apple Watch。 其中每个设备的限制为 100 个。 假设你注册了六台设备,所有这些设备都是 iPhone。 然后,iPhone 还剩 94 个设备 ID,对于其他四种设备类型,每个设备类型仍保留 100 个。 每年只能注销一次设备,才能让这些槽恢复。

如何生成 .p12 文件

可以将 Apple 分发证书和私钥存储在专用信息交换 (.p12) 文件中。 为此,需要存储在本地计算机上的 Apple 生产证书。 如果没有,则不会具有私钥。

  1. 打开 Mac 上的 Keychain Access 应用,然后选择左侧的 “我的证书 ”类别。
  2. 找到正确的分发证书并将其展开以查看相应的私钥。 a. 如果私钥不存在,则必须创建新证书,或在创建证书的计算机上运行这些步骤。
  3. 选择证书或私钥或两者。 然后右键单击所选项以获取上下文菜单,然后选择以 导出开头的操作。
  4. 选择磁盘上的位置以将文件另存为 .p12。 为文件选择强密码。

如何从 App Center 中删除证书和 Apple ID

可以从开发人员帐户中的 App Center 中删除证书和 Apple ID。

  1. 在右上角的个人资料图片下选择 “帐户设置 ”。
  2. 选择 “开发人员帐户”。
  3. 使用表右侧的三个垂直点删除机密,然后 删除证书
  4. 再次选择“删除,验证证书的名称并确认不可逆的操作。

详细了解如何 管理 Apple ID 和证书

向 Apple 手动注册设备

如果尝试直接分发给 App Center 外部的用户,可以按照 Apple 开发人员网站上的步骤操作, 了解如何分发到已注册的设备。 这些步骤介绍如何手动将设备添加到帐户并重新对应用进行签名。

已知错误

找不到个人资料

通过 App Center 登录到 Apple 时,我们会根据开发人员帐户中的配置文件检查应用程序中包含的预配配置文件。 如果在 Apple 开发人员帐户中找不到二进制文件中使用的任何配置文件,App Center 将无法重新对应用程序进行签名。 若要解决此问题,请确保 Apple 开发人员帐户包含应用程序中使用的所有预配配置文件。 可以在 Xcode 项目属性的“常规”选项卡中或 Visual Studio for Mac 中的 iOS 捆绑签名选项中检查应用程序配置文件

注意

尝试通过 App Center 自动预配二进制文件时,在某些情况下,Xcode 自动生成的预配配置文件将导致自动预配失败,并出现以下错误: 名为“iOS 团队...”的配置文件在帐户中找不到。 若要解决此问题,请创建和使用手动创建的预配配置文件。

找不到团队

通过 App Center 登录到 Apple 时,应用程序中包含的团队会根据开发人员帐户中的团队进行检查。 如果在 Apple 开发人员帐户中找不到在二进制文件中使用的任何团队,App Center 将无法重新对应用程序进行签名。 若要解决此问题,请确保 Apple 开发人员帐户包含应用程序中使用的团队。 可以在 Xcode 项目属性的“常规”选项卡中或 Visual Studio for Mac 中的 iOS 捆绑签名选项中检查应用程序团队。

更新了许可协议

Apple 会定期更新其许可协议。 若要继续使用 Apple 开发人员门户,必须阅读并同意更新后的许可证。

  1. 登录到 Apple 开发人员门户
  2. 按照提供的说明接受许可协议。

App Center 无法帮助许可或许可协议流中的内容。

我们的测试人员未注册其设备 ID

如果测试人员意外选择了 我已注册它,请按照以下步骤手动注册设备:

  1. 转到 https://install.appcenter.ms/register-device 移动设备。
  2. 选择“注册并按照屏幕上的说明进行操作。