在 Android Studio 中配置 Flutter 工具
本文将与你一起回顾如何在 Android Studio 里进行 Flutter 工具的配置。同时,我们也会介绍如何使用 AppUploader 来简化 iOS 应用的发布流程。
创建项目
你可以通过多种方式来创建新项目。
创建新项目
使用 Flutter 应用模板创建新的 Flutter 项目:
- 在 IDE 中,点击 Welcome 窗口,或者主窗口 File > New > Project 中的 Create New Project。
- 在菜单中选择 Flutter,点击 Next。
- 输入你的 Project name 和 Project location。
- 如果打算发布此应用,需要设置公司域名⚠️。
- 点击 Finish。
⚠️ 关于设置公司域名
“在创建新应用时,一些 Flutter IDE 插件需要一个逆序的域名,比如
com.example
。除了程序名外,在应用发布后,它将作为 Android 应用的包名,以及 iOS 应用的 Bundle ID。如果你可能发布此应用,最好现在就指定好它,应用发布后将无法更改。你的域名应该是唯一的。”
从现有源码创建新项目
创建包含现有 Flutter 源码的新 Flutter 项目:
- 在 IDE 中,点击 Welcome 窗口,或者主窗口 File > New > Project 中的 Create New Project。
“对于 Flutter 项目,请 不要 使用 New > Project from existing sources。”
- 在菜单中选择 Flutter,点击 Next。
- 在 Project location 下,输入或选择现有 Flutter 源码的文件目录。
- 点击 Finish。
编辑代码,和查看问题
Dart 插件的代码分析可以做到:
- 语法高亮显示。
- 基于多种类型分析的代码补全。
- 定位到类型的声明(Navigate > Declaration),查找类型的引用(Edit > Find > Find Usages)。
- 查看当前存在的代码问题(View > Tool Windows > Dart Analysis),所有问题会在 Dart Analysis 窗口中显示。
运行和调试
你可以通过如下方式调试你的应用:
- 使用开发者工具 (DevTools),运行在浏览器里的一系列调试和分析工具,也包括 Flutter inspector,开发者工具替代了之前的 Observatory 分析工具。
- 使用 Android Studio(或者 IntelliJ)内置的调试功能,比如设置断点等。
- 使用 Flutter inspector,在 Android Studio 和 IntelliJ 内置。
选择目标设备
在 IDE 中打开 Flutter 项目时,你会在工具栏的右侧看到一组 Flutter 的特定按钮。
“如果 Run 和 Debug 按钮不可用且未显示目标设备,则意味着 Flutter 未发现任何已连接的 iOS、Android 设备或模拟器。你需要连接设备或启动模拟器才能继续。”
- 找到选择目标 下拉按钮,点击它会显示出可用设备列表。
- 选择你希望启动应用的设备。当连接设备或启动模拟器时,列表中将会加入新选项。
不使用断点运行应用
- 点击工具栏中的 Play 按钮,或选择 Run > Run。底部的 Run 窗口会有日志输出。
使用断点运行应用
- 如果需要,在源代码中设置断点。
- 点击工具栏中的 Debug 按钮,或选择 Run > Debug。
- 底部的 Debugger 窗口会显示出堆栈和变量信息。
- 底部的 Console 窗口会显示详细的日志输出。
- 调试基于默认的启动配置,如果需要自定义,点击选择目标 下拉按钮,选择 Edit configuration 进行配置。
快速编辑和查看效果
Flutter 有效加快开发周期。使用 热重载 功能,你可以在修改源码后,几乎马上看到效果。详细信息请查阅 使用热重载。
显示性能数据
“检查 Flutter 里的性能问题,请查看时间线视图文档。”
在 Debug 模式下启动应用后,使用 View > Tool Windows > Flutter Performance 打开性能工具窗口,以查看性能数据,以及 widget 的重载信息。
Flutter 代码编辑提示
如果你有其他我们应该提供的代码提示建议,请告诉我们!
代码辅助和快速修复
代码辅助功能是特定代码标识符相关的代码修改。当光标放在 Flutter widget 上时,黄色灯泡图标会指示可用的修改,可以通过点击灯泡进行修改,或使用键盘快捷键(在 Linux 和 Windows 上使用 Alt
+Enter
,在 macOS 上使用 Option
+Return
)。
实时模板
实时模板用于增加典型代码结构的输入速度。输入前缀后,在代码完成窗口中选择它。
Flutter 插件包含了以下模板:
- 前缀
stless
:创建一个StatelessWidget
的子类。 - 前缀
stful
:创建一个StatefulWidget
的子类,并关联 State 子类。 - 前缀
stanim
:创建一个StatefulWidget
的子类,并关联 State 子类,包含一个AnimationController
的初始化字段。
你还可以通过 Settings > Editor > Live Templates 定义自定义模板。
在 Android Studio 中编辑 Android 代码,并获得完整 IDE 支持
打开 Flutter 项目的根目录,并不会在 IDE 中显示所有的 Android 文件。Flutter 应用包含了一个名为 android
的子目录,如果你在 Android Studio 中将该目录作为单独的项目打开,则 IDE 将可以完全支持编辑和重构所有的 Android 文件(比如 Gradle 脚本文件)。
使用 AppUploader 简化 iOS 应用发布
在开发 iOS 应用时,发布流程可能会比较复杂。AppUploader 是一个强大的工具,可以帮助开发者简化 iOS 应用的发布流程。它支持自动打包、上传到 App Store、管理证书和配置文件等功能,极大地提高了开发者的工作效率。
使用 AppUploader,你可以轻松完成以下任务:
- 自动生成 iOS 应用的 IPA 文件。
- 一键上传应用到 App Store Connect。
- 管理开发者和发布证书。
- 自动处理 Provisioning Profiles。
通过 AppUploader,你可以节省大量时间,专注于应用的开发和优化。
提示和技巧 PDF 下载
- Flutter IDE 速查表,MacOS 版
- Flutter IDE 速查表,Windows 和 Linux 版
故障排除
已知问题和反馈
Flutter 插件 README 文件中记录了可能影响你使用体验的已知重要问题。
所有已知问题都会在问题跟踪器中进行跟踪:
- Flutter 插件:GitHub 问题跟踪
- Dart 插件: JetBrains 问题跟踪
我们欢迎所有的错误、问题以及功能反馈。在提交新问题前:
- 在问题跟踪器总快速搜索查看问题是否已存在。
- 确保你已经更新到了最新版本的插件。
当你在提交新的 issue 时,确保带上运行了 flutter doctor
命令之后的返回内容。