在macOS上配置iOS开发环境
在macOS上配置iOS开发环境
本文将详细介绍如何在macOS上将iOS作为目标平台进行Flutter开发。内容包括配置iOS模拟器和真机设备的具体步骤,适合有一定技术基础的开发者阅读。
虚拟设备
真机设备
配置 iOS 模拟器
请按照以下步骤操作,来准备在 iOS 模拟器上运行和测试 Flutter 应用。
请运行以下命令,来安装 iOS 模拟器。
xcodebuild -downloadPlatform iOS
请运行以下命令,来启动模拟器:
open -a Simulator
使用 64 位模拟器设备(涵盖 iPhone 5s 或更高版本)。
- 从Xcode中选择模拟器设备类型。
- 打开Window>Devices and Simulators。你还可以使用快捷键:Cmd+Shift+2
- 打开Devices and Simulators对话框后,单击Simulators。
- 从左侧列表中选择一个Simulator,或按**+**创建一个新的模拟器。
- 从Simulator应用中,打开File>Open Simulator>选择目标 iOS 设备。
- 在模拟器中检查设备版本,打开Settings应用>General>About。
- 模拟的高分辨率 iOS 设备可能会溢出你的屏幕。如果在你的 Mac 上出现这种情况,请在Simulator应用中更改显示尺寸。
- 显示尺寸 菜单项 快捷键
- 小尺寸(与真机相同的物理尺寸) Window>Physical Size Cmd+1
- 适中 Window>Point Accurate Cmd+2
- HD 高分辨率(与真机相同的像素尺寸) Window>Pixel Accurate Cmd+3
- 适应屏幕 Window>Fit Screen Cmd+4
注意:iOS 即将到来的一项变更会导致运行在 iOS 18.4(目前为 beta 版)的真机设备上的 Flutter Debug 模式暂时中断。如果你的真机设备已经运行在 iOS 18.4,我们建议你切换到虚拟设备选项卡,并按照说明使用模拟器。相关详情,请参阅最新版 iOS 上的 Flutter。
配置目标 iOS 设备
你需要执行以下操作,将 Flutter 应用程序部署到 iPhone 或 iPad 真机上:
- 创建一个Apple Developer账户。
- 在 Xcode 中配置真机设备部署。
- 创建开发配置文件 (Provisioning Profile),并自行签名证书 (Signing Certificate)。
- 如果你的应用程序使用 Flutter 插件,请安装第三方 CocoaPods 依赖管理器。
创建 Apple ID 和 Apple Developer 账户
你可以暂时跳过这一步。实际上,你在准备向 App Store 发布应用之前,并不需要 Apple Developer 账户。
如果你只需要测试部署应用程序,请完成第 1 步后继续下一节。
- 如果你没有Apple ID,请创建一个。
- 如果你未注册Apple Developerprogram,请立即注册。了解有关会员类型的更多信息,请查阅选择会员资格。
将 iOS 真机连接到 Mac
配置你的 iOS 真机连接到 Xcode。
- 将 iOS 设备连接到 Mac 的 USB 端口。
- 首次将 iOS 设备连接到 Mac 时,你的 iOS 设备会显示信任这台电脑吗?的对话框。
- 点击信任。
- 出现提示时,解锁你的 iOS 设备。
在 iOS 16 或更高版本上启用开发者模式
从 iOS 16 开始,Apple 要求你启用开发者模式,以防止恶意软件。在部署到 iOS 16 或更高版本的设备之前,请启用开发者模式。
- 点击设置>隐私与安全性>开发者模式。
- 将开发者模式切换为打开。
- 点击重新启动。
- 重新启动 iOS 设备后,解锁 iOS 设备。
- 当出现打开开发者模式吗?对话框时,点击打开。对话框会提示开发者模式会降低 iOS 设备的安全性。
- 解锁你的 iOS 设备。
启用开发者代码签名证书 (signing certificates)
在部署到 iOS 真机前,你需要在 Mac 与 iOS 设备之间建立信任。这需要将签名的开发者证书加载到 iOS 设备上。在 Xcode 中签名应用程序,你需要创建一个开发者配置文件 (Provisioning Profile)。请按照 Xcode 签名流程配置你的项目。
启动 Xcode。
使用 Apple ID 登录 Xcode。
打开Xcode>Settings...
点击Accounts。
点击**+**。
选择Apple ID并点击Continue。
出现提示时,请输入你的Apple ID和Password。
关闭Settings对话框。开发和测试支持任意 Apple ID。
打开File>Open...
你还可以使用快捷键:Cmd+O导航至 Flutter 项目目录。
打开项目中默认的 Xcode workspace:ios/Runner.xcworkspace。
在运行按钮右侧的设备下拉菜单中选择你要部署的 iOS 真机。它应该出现在iOS devices标题下方。
在左侧导航面板的Targets下,选择Runner。
在Runner设置窗内,点击Signing & Capabilities。
选择顶部的All。
选择Automatically manage signing。
从Team下拉菜单中选择一个团队。团队是在Apple Developer Account页面的App Store Connect创建的。如果你尚未创建团队,可以选择个人团队 (personal team)。Team下拉菜单中会显示名为你的名称 (Personal Team)的选项。选择团队后,Xcode 会执行以下工作。
创建并下载开发证书
将设备注册到你的账户
根据需要创建并下载配置文件 (Provisioning Profile)
如果在 Xcode 中自动签名失败,请检查项目的General>Identity>Bundle Identifier值是否唯一。
启用 Mac 和 iOS 设备之间的信任
首次连接 iOS 真机时,为你的 Mac 和 iOS 设备上的开发证书启用信任。当设备连接到 Mac时,你应该启用 iOS 对 Mac 的信任。
为 iOS 设备启用开发者证书
在不同版本的 iOS 中,启用证书的方式也不尽相同。
- 打开 iOS 设备上的设置。
- 点击通用>设备管理。
- 点击你的证书切换为启用。
- 打开 iOS 设备上的设置。
- 点击通用>VPN 与设备管理。
- 点击你的证书切换为启用。
- 打开 iOS 设备上的设置。
- 点击通用>VPN 与设备管理。
提示:如果在设置中找不到VPN 与设备管理,请在 iOS 设备上运行一次应用,然后再试一次。
- 在开发者应用标题下,你需要找到你的证书。
- 点击你的证书。
- 点击信任 "
" 。 - 点击信任。
如果出现codesign 想要访问密钥...的提示对话框:
- 输入你的 macOS 密码。
- 点击始终允许。
在 iOS 设备上设置无线调试(可选)
请按照以下步骤来使用 Wi-Fi 连接调试设备。
- 将 iOS 设备连接到与 macOS 设备相同的网络。
- 为 iOS 设备设置密码。
- 打开Xcode。
- 选择Window>Devices and Simulators。你还可以使用快捷键:Shift+Cmd+2
- 选择你的 iOS 设备。
- 选择Connect via Network。
- 一旦设备名称旁边出现网络图标,请将 iOS 设备从 Mac 拔下。
如果在使用 flutter run 时没有看到设备列表,请延长超时时间。超时默认为 10 秒。要延长超时时间,请将值改为大于 10 的整数。
flutter run --device-timeout 60
提示:进一步了解无线调试