开始在 macOS 上构建 Flutter iOS 应用
验证系统要求
#要安装和运行 Flutter,您的 macOS 环境必须满足以下硬件和软件要求。
硬件要求
#您的 macOS Flutter 开发环境必须满足以下最低硬件要求。
要求 | 最低 | 推荐 |
---|---|---|
CPU 内核 | 4 | 8 |
内存(GB) | 8 | 16 |
显示分辨率(像素) | WXGA (1366 x 768) | FHD (1920 x 1080) |
可用磁盘空间(GB) | 44.0 | 70.0 |
软件要求
#要编写和编译用于 iOS 的 Flutter 代码,请安装以下软件包。
操作系统
#Flutter 支持在 macOS 11(Big Sur)或更高版本上进行开发。本指南假设您的 Mac 使用 zsh
作为默认 Shell。
要验证您的 Shell 配置,请展开此部分
与大多数类 Unix 操作系统一样,macOS 可以支持多个 Shell,例如 bash
、zsh
和 sh
。从 2019 年 10 月发布的 macOS Catalina(macOS 10.15)开始,Zsh 或 zsh
是 macOS 的默认 Shell。
检查并将 zsh
设置为默认值
#要验证
zsh
是否已设置为默认的 macOS Shell,请运行 目录服务命令行实用程序。dscl . -read ~/ UserShell
该命令应打印以下内容作为其响应。
UserShell: /bin/zsh
您可以跳过其余步骤。
如果您需要安装
zsh
,请按照此 Wiki中的过程操作。如果您需要将默认 Shell 更改为
zsh
,请运行chsh
命令。chsh -s `which zsh`
要详细了解 macOS 和 zsh
,请查看 macOS 文档中的在 Mac 上将 zsh 用作默认 Shell。
某些 Flutter 组件需要在运行Apple 芯片的 Mac 上使用Rosetta 2 翻译过程。要在 Apple 芯片上运行所有 Flutter 组件,请安装Rosetta 2。
sudo softwareupdate --install-rosetta --agree-to-license
开发工具
#下载并安装以下软件包。
- Xcode 16 用于调试和编译原生 Swift 或 ObjectiveC 代码。Xcode 安装包含Git 2.27 或更高版本,用于管理源代码。
- CocoaPods 1.16 用于编译启用原生应用中的 Flutter 插件。
上述软件的开发人员为这些产品提供支持。要解决安装问题,请查阅该产品的文档。
当您运行当前版本的 flutter doctor
时,它可能会列出其中一个软件包的不同版本。如果是这样,请安装它推荐的版本。
文本编辑器或集成开发环境
#您可以使用任何文本编辑器或集成开发环境 (IDE) 结合 Flutter 的命令行工具来构建应用。
使用带有 Flutter 扩展或插件的 IDE 可以提供代码完成、语法高亮显示、小部件编辑辅助、调试和其他功能。
常用的选项包括
- Visual Studio Code 1.77 或更高版本,以及VS Code 的 Flutter 扩展。
- Android Studio 2023.3.1(Jellyfish)或更高版本,以及IntelliJ 的 Flutter 插件。
- IntelliJ IDEA 2023.3 或更高版本,以及IntelliJ 的 Flutter 插件和IntelliJ 的 Android 插件。
安装 Flutter SDK
#要安装 Flutter SDK,您可以使用 VS Code Flutter 扩展或自己下载并安装 Flutter 包。
使用 VS Code 安装 Flutter
#要使用这些说明安装 Flutter,请验证您是否已安装Visual Studio Code 1.77 或更高版本,以及VS Code 的 Flutter 扩展。
提示 VS Code 安装 Flutter
#启动 VS Code。
要打开**命令面板**,请按Command + Shift + P。
在**命令面板**中,键入
flutter
。选择**Flutter:新建项目**。
VS Code 会提示您在计算机上找到 Flutter SDK。
如果您已安装 Flutter SDK,请单击**查找 SDK**。
如果您尚未安装 Flutter SDK,请单击**下载 SDK**。
如果您尚未按照开发工具先决条件中的说明安装 Git,此选项将带您进入 Flutter 安装页面。
当系统提示**哪个 Flutter 模板?**时,请忽略它。按Esc。在检查开发环境设置后,您可以创建一个测试项目。
下载 Flutter SDK
#显示**选择 Flutter SDK 的文件夹**对话框时,选择要安装 Flutter 的位置。
VS Code 会将您置于用户配置文件中以开始。选择其他位置。
考虑
~/development/
单击**克隆 Flutter**。
下载 Flutter 期间,VS Code 会显示此弹出通知
Downloading the Flutter SDK. This may take a few minutes.
此下载需要几分钟。如果您怀疑下载已挂起,请单击**取消**,然后重新开始安装。
下载完成后,**输出**面板会显示。
Checking Dart SDK version... Downloading Dart SDK from the Flutter engine ... Expanding downloaded archive...
成功后,VS Code 会显示此弹出通知
Initializing the Flutter SDK. This may take a few minutes.
初始化期间,**输出**面板会显示以下内容
Building flutter tool... Running pub upgrade... Resolving dependencies... Got dependencies. Downloading Material fonts... Downloading Gradle Wrapper... Downloading package sky_engine... Downloading flutter_patched_sdk tools... Downloading flutter_patched_sdk_product tools... Downloading windows-x64 tools... Downloading windows-x64/font-subset tools...
此过程还会运行
flutter doctor -v
。在此过程中的这一点,请*忽略此输出*。Flutter Doctor 可能会显示不适用于此快速入门指南的错误。Flutter 安装成功后,VS Code 会显示此弹出通知
Do you want to add the Flutter SDK to PATH so it's accessible in external terminals?
VS Code 可能会显示 Google Analytics 通知。
如果您同意,请单击**确定**。
要在所有终端窗口中启用
flutter
- 关闭然后重新打开所有终端窗口。
- 重新启动 VS Code。
下载然后安装 Flutter
#要安装 Flutter,请从其存档中下载 Flutter SDK 包,将该包移动到您想要存储的位置,然后解压缩 SDK。
下载以下安装包以获取 Flutter SDK 的最新稳定版本。
对于其他发布渠道和旧版本,请查看SDK 存档。
Flutter SDK 应下载到 macOS 默认下载目录:
~/Downloads/
。创建一个可以安装 Flutter 的文件夹。
考虑在
~/development/
中创建一个目录。将文件解压缩到您要存储 Flutter SDK 的目录中。
unzip ~/Downloads/flutter_sdk_v1.0.0.zip \ -d ~/development/
完成后,Flutter SDK 应位于
~/development/flutter
目录中。
将 Flutter 添加到您的 PATH
#要在终端中运行 Flutter 命令,请将 Flutter 添加到 PATH
环境变量。本指南假设您的Mac 运行最新的默认 Shell,即 zsh
。Zsh 使用 .zshenv
文件作为环境变量。
启动您喜欢的文本编辑器。
如果存在,请在文本编辑器中打开 Zsh 环境变量文件
~/.zshenv
。如果不存在,请创建~/.zshenv
。复制以下行并将其粘贴到
~/.zshenv
文件的末尾。bashexport PATH=$HOME/development/flutter/bin:$PATH
保存您的
~/.zshenv
文件。要应用此更改,请重新启动所有打开的终端会话。
如果您使用其他 Shell,请查看有关设置 PATH 的本教程。
配置 iOS 开发环境
#安装和配置 Xcode
#要为 iOS 开发 Flutter 应用,请安装 Xcode 以编译为原生字节码。
打开**App Store**并登录。
搜索
Xcode
。单击**安装**。
Xcode 安装程序占用 6 GB 以上的存储空间。下载可能需要一些时间。
要配置命令行工具以使用已安装版本的 Xcode,请使用以下命令。
sudo sh -c 'xcode-select -s /Applications/Xcode.app/Contents/Developer && xcodebuild -runFirstLaunch'
将此路径用于最新版本的 Xcode。如果您需要使用其他版本,请指定该路径。
签署 Xcode 许可协议。
sudo xcodebuild -license
尽量使用当前版本的 Xcode。
配置目标 iOS 设备
#使用 Xcode,您可以在 iOS 设备或模拟器上运行 Flutter 应用。
配置 iOS 模拟器
#要准备在 iOS 模拟器上运行和测试您的 Flutter 应用,请按照以下步骤操作。
要安装 iOS 模拟器,请运行以下命令。
xcodebuild -downloadPlatform iOS
要启动模拟器,请运行以下命令
open -a Simulator
将模拟器设置为使用 64 位设备。这涵盖了 iPhone 5s 或更高版本。
从**Xcode**中,选择一个模拟器设备类型。
转到**窗口** > **设备和模拟器**。
您也可以按Cmd + Shift + 2。
打开**设备和模拟器**对话框后,单击**模拟器**。
从左侧列表中选择一个**模拟器**,或按**+**创建新的模拟器。
在**模拟器**应用中,转到**文件** > **打开模拟器** > 选择您的目标 iOS 设备。
要检查模拟器中的设备版本,请打开**设置**应用 > **常规** > **关于**。
模拟的高屏幕密度 iOS 设备可能会超出您的屏幕。如果在您的 Mac 上看起来确实如此,请更改**模拟器**应用中的显示大小。
显示尺寸 菜单命令 键盘快捷键 小 **窗口** > **物理尺寸** Cmd + 1 中等 窗口 > 点精确 Cmd + 2 高清精确 窗口 > 像素精确 Cmd + 3 适应屏幕 窗口 > 适应屏幕 Cmd + 4
设置您的目标物理 iOS 设备
#要将您的 Flutter 应用部署到物理 iPhone 或 iPad,您需要执行以下操作
- 创建一个 Apple 开发者 账户。
- 在 Xcode 中设置物理设备部署。
- 创建开发配置文件以自签名证书。
- 如果您的应用使用 Flutter 插件,请安装第三方 CocoaPods 依赖项管理器。
创建您的 Apple ID 和 Apple 开发者账户
#您现在可以跳过此步骤。在您准备好将应用分发到 App Store 之前,您实际上并不需要 Apple 开发者账户。
如果您只需要测试部署您的应用,请完成第一步并继续下一节。
将您的物理 iOS 设备连接到您的 Mac
#配置您的物理 iOS 设备以连接到 Xcode。
将您的 iOS 设备连接到 Mac 上的 USB 端口。
首次将您的 iOS 设备连接到您的 Mac 时,您的 iOS 设备会显示信任此电脑?对话框。
点击信任。
出现提示时,解锁您的 iOS 设备。
在 iOS 16 或更高版本上启用开发者模式
#从 iOS 16 开始,Apple 要求您启用开发者模式 以防止恶意软件。在部署到运行 iOS 16 或更高版本的设备之前,请启用开发者模式。
点击设置 > 隐私与安全性 > 开发者模式。
点击切换开发者模式到开启。
点击重启。
iOS 设备重启后,解锁您的 iOS 设备。
当打开开发者模式?对话框出现时,点击打开。
该对话框解释说,开发者模式需要降低 iOS 设备的安全性。
解锁您的 iOS 设备。
启用开发者代码签名证书
#要部署到物理 iOS 设备,您需要与您的 Mac 和 iOS 设备建立信任关系。这要求您将签名的开发者证书加载到您的 iOS 设备上。要在 Xcode 中签名应用,您需要创建一个开发配置文件。
要预配您的项目,请遵循 Xcode 签名流程。
启动 Xcode。
转到Xcode > 设置...
- 转到Xcode > 设置...
- 点击账户。
- 点击+。
- 选择Apple ID 并点击继续。
- 出现提示时,输入您的Apple ID 和密码。
- 关闭设置对话框。
开发和测试支持任何 Apple ID。
转到文件 > 打开...
您也可以按 Cmd + O。
导航到您的 Flutter 项目目录。
打开项目中的默认 Xcode 工作区:
ios/Runner.xcworkspace
。在运行按钮右侧的设备下拉菜单中选择您打算部署到的物理 iOS 设备。
它应该出现在iOS 设备标题下。
在左侧导航面板的目标下,选择Runner。
在Runner设置窗格中,点击签名与功能。
在顶部选择全部。
选择自动管理签名。
从团队下拉菜单中选择一个团队。
团队是在 Apple 开发者账户 页面上的App Store Connect 部分创建的。如果您尚未创建团队,可以选择个人团队。
团队下拉菜单将该选项显示为您的姓名(个人团队)。
选择团队后,Xcode 会执行以下任务
- 创建并下载开发证书
- 将您的设备注册到您的账户,
- 根据需要创建并下载配置文件
如果 Xcode 中的自动签名失败,请验证项目的常规 > 标识 > 捆绑包标识符值是否唯一。
启用对您的 Mac 和 iOS 设备的信任
#首次连接物理 iOS 设备时,请为您的 Mac 和 iOS 设备上的开发证书启用信任。
当您将设备连接到 Mac时,您应该已启用了 iOS 设备上对 Mac 的信任。
为您的 iOS 设备启用开发者证书
#启用证书在不同版本的 iOS 中有所不同。
在 iOS 设备上打开设置应用。
点击常规 > 配置文件与设备管理。
点击切换您的证书到启用
在 iOS 设备上打开设置应用。
点击常规 > VPN与设备管理。
点击切换您的证书到启用。
在 iOS 设备上打开设置应用。
点击常规 > VPN与设备管理。
在开发者应用标题下,您应该找到您的证书。
点击您的证书。
点击信任“<证书>”。
当对话框显示时,点击信任。
如果codesign 想要访问密钥...对话框显示
输入您的 macOS 密码。
点击始终允许。
在您的 iOS 设备上设置无线调试(可选)
#要使用 Wi-Fi 连接调试您的设备,请按照以下步骤操作。
将您的 iOS 设备连接到与您的 macOS 设备相同的网络。
为您的 iOS 设备设置密码。
打开Xcode。
转到**窗口** > **设备和模拟器**。
您也可以按 Shift + Cmd + 2。
选择您的 iOS 设备。
选择通过网络连接。
设备名称旁边出现网络图标后,将您的 iOS 设备从 Mac 上拔下。
如果您在使用flutter run
时未看到您的设备列出,请延长超时时间。超时时间默认为 10 秒。要延长超时时间,请将值更改为大于 10 的整数。
flutter run --device-timeout 60
安装 CocoaPods
#如果您的应用依赖于具有原生 iOS 代码的 Flutter 插件,请安装 CocoaPods。此程序捆绑了 Flutter 和 iOS 代码中的各种依赖项。
要安装和设置 CocoaPods,请运行以下命令
按照 CocoaPods 安装指南安装
cocoapods
。sudo gem install cocoapods
启动您喜欢的文本编辑器。
在文本编辑器中打开 Zsh 环境变量文件
~/.zshenv
。复制以下行并将其粘贴到
~/.zshenv
文件的末尾。bashexport PATH=$HOME/.gem/bin:$PATH
保存您的
~/.zshenv
文件。要应用此更改,请重新启动所有打开的终端会话。
检查开发环境设置
#运行 Flutter doctor
#flutter doctor
命令验证 macOS 上完整 Flutter 开发环境的所有组件。
打开您的终端。
要验证所有组件的安装,请运行以下命令。
flutter doctor
由于您选择开发 iOS,因此您不需要所有组件。如果您按照本指南操作,则命令的结果应类似于
Running flutter doctor...
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.5, on macOS 14.4.0 23E214 darwin-arm64, locale en)
[!] Android toolchain - develop for Android devices
[!] Chrome - develop for the web
[✓] Xcode - develop for iOS and macOS (Xcode 16)
[!] Android Studio (not installed)
[✓] VS Code (version 1.95)
[✓] Connected device (1 available)
[✓] Network resources
! Doctor found issues in 3 categories.
解决 Flutter doctor 问题
#当flutter doctor
命令返回错误时,可能是由于 Flutter、VS Code、Xcode、连接的设备或网络资源导致的。
如果flutter doctor
命令针对任何这些组件返回错误,请使用详细标志再次运行它。
flutter doctor -v
检查输出以获取可能需要安装的其他软件或要执行的其他任务。
如果更改 Flutter SDK 或其相关组件的配置,请再次运行flutter doctor
以验证安装。
开始使用 Flutter 在 macOS 上开发 iOS 应用
#恭喜。安装了所有先决条件和 Flutter SDK 后,您就可以开始在 macOS 上为 iOS 开发 Flutter 应用了。
要继续您的学习之旅,请参阅以下指南
管理 Flutter SDK
#要了解有关管理 Flutter SDK 安装的更多信息,请参阅以下资源。
除非另有说明,否则本网站上的文档反映了 Flutter 的最新稳定版本。页面上次更新于 2024-10-28。 查看源代码 或 报告问题。