返回

Xcode 9 自动签名更新设备列表:高效便捷管理 iOS App 测试设备

IOS

前言

作为一名 iOS 开发人员,您可能经常需要测试您的应用程序在不同设备上的表现。Xcode 9 为您提供了方便的方式来管理您的测试设备列表,但是手动更新列表的过程可能很繁琐。本教程将向您展示如何使用一个简单的脚本自动更新设备列表,从而节省您的时间并简化您的工作流程。

为什么需要自动更新设备列表?

当您在 https://developer.apple.com/account/ios/device/ 添加设备的 UDID 后,Xcode 可能不会立即同步这些信息。这会导致您无法在 Xcode 中测试您的应用程序。通过使用自动化脚本,您可以立即更新设备列表,从而避免此问题。

所需的工具

要完成本教程,您需要以下工具:

  • Xcode 9 或更高版本
  • Apple 开发者帐户
  • 带有 Ruby 或 Python 解释器的 Mac

步骤 1:创建脚本

打开您喜欢的代码编辑器(例如 TextEdit 或 Sublime Text),然后创建以下脚本:

# coding: utf-8

require 'rubygems'
require 'net/https'
require 'uri'
require 'json'
require 'plist'

# 您的 Apple 开发者帐户的用户名
username = ""

# 您的 Apple 开发者帐户的密码
password = ""

# 创建一个新的 Net::HTTP::Post::Multipart 对象
request = Net::HTTP::Post::Multipart.new url, Net::HTTP::FormData.new

# 添加必要的标头
request["Content-Type"] = 'multipart/form-data; boundary=' + request.boundary

# 添加用于身份验证的标头
request.basic_auth username, password

# 执行请求
response = Net::HTTP.start(host, port) do |https|
  https.request request
end

# 解析响应主体
json = JSON.parse response.body

# 从响应中提取设备列表
devices = json["devices"]

# 保存设备列表到 Plist 文件
Plist::Emit.dump devices, "devices.plist"

请将 usernamepassword 替换为您自己的 Apple 开发者帐户的凭据。此外,将 hostport 替换为以下值:

  • hostdeveloper.apple.com
  • port443

步骤 2:运行脚本

在终端中,导航到包含脚本文件的目录,然后运行以下命令:

ruby script.rb

脚本将连接到 Apple 开发者门户并提取您的设备列表。它将这些设备保存到名为 devices.plist 的 Plist 文件中。

步骤 3:配置 Xcode

现在您已经生成了设备列表,您需要将其添加到 Xcode 中。按照以下步骤操作:

  1. 打开 Xcode 并转到“首选项”窗口(Xcode > 首选项)。
  2. 选择“帐户”选项卡。
  3. 单击左下角的“+”按钮。
  4. 在“类型”下拉菜单中选择“Apple ID”。
  5. 输入您的 Apple ID 和密码。
  6. 单击“添加”。
  7. Xcode 将验证您的帐户。
  8. 单击“管理证书和帐户”。
  9. 在“iOS 应用程序签名”部分下,单击“编辑”。
  10. 在“团队”菜单中,选择您的开发者团队。
  11. 在“配置”菜单中,选择“自定义”。
  12. 单击“+”按钮。
  13. 在“名称”字段中输入一个名称,例如“自动更新设备”。
  14. 单击“添加设备”。
  15. 导航到您在步骤 2 中创建的 devices.plist 文件。
  16. 选择文件并单击“打开”。
  17. 单击“完成”。

步骤 4:测试脚本

要测试脚本,请从 Xcode 中运行您的应用程序。Xcode 现在应该能够访问您的更新后的设备列表,并且您应该能够在这些设备上测试您的应用程序。

结论

通过使用这个简单的脚本,您可以自动化 Xcode 中设备列表的更新过程。这将节省您的时间并简化您的工作流程,让您专注于开发出色的 iOS 应用程序。告别手动更新的烦恼,拥抱自动化的便利吧!