设备注册和应用重新签名

重要

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 个设备 ID。 每年只能注销设备一次才能取回这些槽。

如何生成 .p12 文件

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

  1. 在 Mac 上打开 “密钥链访问 ”应用,然后选择左侧的“ 我的证书 ”类别。
  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 Team ...”的配置文件在帐户中找不到 。 若要解决此问题,请创建并使用手动创建的预配配置文件。

找不到团队

通过 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. 选择“ 注册 ”,然后按照屏幕上的说明操作。