【2025最新】在 macOS 上构建 Flutter iOS 应用
推荐超级课程:
- 本地离线DeepSeek AI方案部署实战教程【完全版】
- Docker快速入门到精通
- Kubernetes入门到大师通关课
- AWS云服务快速入门实战
目录
- 软件要求
- 操作系统
- 开发工具
- 文本编辑器或集成开发环境
- 安装 Flutter SDK
- 下载并安装 Flutter
- 将 Flutter 添加到您的`PATH`
- 配置 iOS 开发
- 安装并配置 Xcode
- 配置您的目标 iOS 设备
- 设置目标物理 iOS 设备
- 创建您的 Apple ID 和 Apple 开发者帐户
- 将您的物理 iOS 设备连接到 Mac
- 在 iOS 16 或更高版本上启用开发者模式
- 启用开发人员代码签名证书
- 启用对 Mac 和 iOS 设备的信任
- 为您的 iOS 设备启用开发者证书
- 在 iOS 设备上设置无线调试(可选)
- 安装 CocoaPods
- 检查您的开发设置
- 运行 Flutter doctor
- 排查 Flutter 医生的问题
- 开始使用 Flutter 在 macOS 上开发 iOS 应用
软件要求
要为 iOS 编写和编译 Flutter 代码,请安装以下软件包。
操作系统
zsh
Flutter 支持在 macOS 12 (Monterey) 或更高版本上进行开发。本指南假定您的 Mac 已将作为默认 shell运行。
某些 Flutter 组件需要Rosetta 2 转换过程。如果您在Apple Silicon (ARM) Mac 上进行开发,请安装Rosetta 2:
sudo softwareupdate --install-rosetta --agree-to-license
开发工具
下载并安装以下软件包。
- Xcode用于调试和编译原生 Swift 或 Objective-C 代码。Xcode 安装还包含 Git,用于管理 Flutter 版本和你自己的源代码版本控制。
- CocoaPods用于在您的原生应用中编译并启用 Flutter 插件。
上述软件的开发者为这些产品提供支持。要解决安装问题,请参阅该产品的文档。
文本编辑器或集成开发环境
您可以使用任何文本编辑器或集成开发环境 (IDE) 结合 Flutter 的命令行工具来构建 Flutter 应用程序。
使用带有 Flutter 扩展或插件的 IDE 可以提供代码完成、语法高亮、小部件编辑辅助、调试和其他功能。
热门选项包括:
- 带有适用于VS Code 的 Flutter 扩展的Visual Studio Code。
- Android Studio带有适用于IntelliJ 的 Flutter 插件。
- IntelliJ IDEA同时具有适用于 IntelliJ 的 Flutter 插件和适用于 IntelliJ 的 Android 插件。
Flutter 团队建议安装Visual Studio Code和VS Code 的 Flutter 扩展。此组合可简化 Flutter SDK 的安装。
安装 Flutter SDK
要安装 Flutter SDK,您可以使用 VS Code Flutter 扩展或自行下载并安装 Flutter 包。
下载并安装 Flutter
要安装 Flutter,请从其存档中下载 Flutter SDK 包,将包移动到您想要存储的位置,然后提取 SDK。
-
下载以下安装包以获取 Flutter SDK 的最新稳定版本。
对于其他发布渠道和旧版本,请查看SDK 档案。
Flutter SDK 应该下载到 macOS 默认下载目录:
~/Downloads/
。 -
创建一个可以安装 Flutter 的文件夹。
考虑在 创建一个目录
~/development/
。 -
将文件解压到您想要存储 Flutter SDK 的目录中。
unzip ~/Downloads/flutter_macos_arm64_3.32.8-stable.zip \-d ~/development/
完成后,Flutter SDK 应该位于
~/development/flutter
目录中。
将 Flutter 添加到您的PATH
要在终端中运行 Flutter 命令,请将 Flutter 添加到PATH
环境变量中。本指南假设您的Mac 运行最新的默认 shell。Zshzsh
使用该.zshenv
文件作为环境变量。
-
启动您喜欢的文本编辑器。
-
如果存在,请
~/.zshenv
在文本编辑器中打开 Zsh 环境变量文件。如果不存在,请创建~/.zshenv
。 -
复制以下行并将其粘贴到文件末尾
~/.zshenv
。export 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
配置您的目标 iOS 设备
使用 Xcode,您可以在 iOS 设备或模拟器上运行 Flutter 应用程序。
设置目标物理 iOS 设备
要将 Flutter 应用部署到物理 iPhone 或 iPad,您需要执行以下操作:
- 创建一个Apple 开发者帐户。
- 在 Xcode 中设置物理设备部署。
- 创建开发配置文件以进行自签名证书。
- 如果您的应用使用 Flutter 插件,请安装第三方 CocoaPods 依赖管理器。
创建您的 Apple ID 和 Apple 开发者帐户
您现在可以跳过此步骤。在您准备将应用分发到 App Store 之前,您实际上不需要 Apple 开发者帐户。
如果您只需要测试部署您的应用程序,请完成第一步并继续下一部分。
-
如果您没有Apple ID,请创建一个。
-
如果您尚未注册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 设备标题下。
-
在左侧导航面板中的Targets下,选择Runner。
-
在Runner设置窗格中,单击Signing & Capabilities。
-
选择顶部的**“全部” 。**
-
选择自动管理签名。
-
从团队下拉菜单中选择一个团队。
团队创建于Apple 开发者帐户页面的App Store Connect部分。如果您尚未创建团队,可以选择个人团队。
团队下拉菜单显示该选项为您的姓名(个人团队)。
选择团队后,Xcode 将执行以下任务:
1. 创建并下载开发证书
2. 使用您的帐户注册您的设备,
3. 如果需要,创建并下载配置文件
如果 Xcode 中的自动签名失败,请验证项目的General > Identity > Bundle Identifier值是否唯一。
启用对 Mac 和 iOS 设备的信任
首次连接物理 iOS 设备时,请同时为 Mac 和 iOS 设备上的开发证书启用信任。
当您将设备连接到 Mac时,您应该已经在 iOS 设备上启用了对 Mac 的信任。
为您的 iOS 设备启用开发者证书
不同版本的 iOS 启用证书的方式有所不同。
-
在 iOS 设备上打开**“设置”应用。**
-
点击常规 > VPN 和设备管理。
笔记
如果您在“设置”中找不到“VPN 和设备管理”,请在您的 iOS 设备上运行一次您的应用,然后重试。
-
在开发者应用程序标题下,您应该找到您的证书。
-
点击您的证书。
-
点击信任“<证书>”。
-
当对话框显示时,点击**“信任”**。
如果**协同设计想要访问密钥…**对话框将显示:
-
输入您的 macOS 密码。
-
点按**“始终允许”**。
在 iOS 设备上设置无线调试(可选)
要使用 Wi-Fi 连接调试您的设备,请按照以下步骤操作。
-
将您的 iOS 设备连接到与 macOS 设备相同的网络。
-
为您的 iOS 设备设置密码。
-
打开Xcode。
-
转到窗口 > 设备和模拟器。
您也可以按Shift+ Cmd+ 2。
-
选择您的 iOS 设备。
-
选择通过网络连接。
-
一旦网络图标出现在设备名称旁边,就从 Mac 上拔下 iOS 设备。
如果您在使用时没有看到您的设备列出flutter run
,请延长超时时间。超时默认为 10 秒。要延长超时时间,请将值更改为大于 10 的整数。
flutter run --device-timeout 60
安装 CocoaPods
如果你的应用依赖于包含原生 iOS 代码的Flutter 插件,请安装CocoaPods。该程序捆绑了 Flutter 和 iOS 代码中的各种依赖项。
要安装和设置 CocoaPods,请运行以下命令:
-
cocoapods
按照CocoaPods 安装指南进行安装。sudo gem install cocoapods
-
启动您喜欢的文本编辑器。
-
~/.zshenv
在文本编辑器中打开 Zsh 环境变量文件。 -
复制以下行并将其粘贴到文件末尾
~/.zshenv
。export PATH=$HOME/.gem/bin:$PATH
-
保存您的
~/.zshenv
文件。 -
要应用此更改,请重新启动所有打开的终端会话。
检查您的开发设置
帮助
运行 Flutter doctor
该flutter doctor
命令验证 macOS 的完整 Flutter 开发环境的所有组件。
-
打开你的终端。
-
要验证所有组件的安装,请运行以下命令。
flutter doctor
由于您选择开发 iOS 平台,因此无需所有组件。如果您遵循本指南,该命令应该会输出[✓]
您设置的工具和平台的信息。
排查 Flutter 医生的问题
当flutter doctor
命令返回错误时,可能是由于 Flutter、VS Code、Xcode、连接的设备或网络资源。
如果该flutter doctor
命令对任何这些组件返回错误,请使用详细标志再次运行它。
flutter doctor -v
检查输出中您可能需要安装的其他软件或需要执行的进一步任务。
如果您更改了 Flutter SDK 或其相关组件的配置,请flutter doctor
再次运行以验证安装。
开始使用 Flutter 在 macOS 上开发 iOS 应用
**恭喜!**所有必备组件和 Flutter SDK 均已安装完毕,您可以开始在 macOS 上开发 iOS 版 Flutter 应用了。