前言
上一篇文章主要了解了Flutter的基础内容,组件、路由、数据交互、数据存储/缓存等,本篇继续了解更多进阶内容。
热重载
Flutter 的热重载功能可帮助你在无需重新启动应用程序的情况下快速、轻松地测试、构建用户界面、添加功能以及修复错误。通过将更新的源代码文件注入到正在运行的 Dart 虚拟机(VM) 来实现热重载。在虚拟机使用新的字段和函数更新类之后, Flutter 框架会自动重新构建 widget 树,以便你可以快速查看更改的效果。
开启热重载:
-
在支持 Flutter 编辑器 或终端窗口运行应用程序,物理机或虚拟器都可以。 Flutter 应用程序只有在 DEBUG 模式下才能被热重载。
-
修改项目中的一个 Dart 文件。大多数类型的代码更改可以热重载,然而一些 特别情况 需要热重启应用程序以生效。
-
如果你在支持 Flutter 的 IDE 或编辑器中工作,请选择 Save All (Command S/Ctrl S),或单击工具栏上的 Hot Reload 按钮。
如果你正在使用命令行 flutter run 运行应用程序,请在终端窗口输入 r。
成功执行热重载后,你将在控制台中看到类似于以下内容的消息:
Performing hot reload...
Reloaded 1 of 448 libraries in 978ms.
调试
- Android Studio/IntelliJ 和 VS Code(借助 Flutter 和 Dart 插件)支持内置的源代码调试器,可以设置断点,单步调试,检查数值。
- Flutter inspector,是开发者工具提供的 widget 检查器,也可直接在 Android Studio 和 IntelliJ 中使用(借助 Flutter 插件)。检查器可以可视化展现 widget 树,查看单个 widget 及其属性值,开启性能图层,等等。
性能优化
Flutter对于性能问题,分了四类:流畅度、内存、应用大小、功耗。
对于性能优化,建议先看下官方提供的一些性能指标和常见的性能最佳实践,后续在编码过程中,我也会就遇到的问题进行具体分析。
说明文档地址:flutter.cn/perf
打包
项目制作完成后,接下来的步骤就是打包上架,上架各平台都需要经过一系列的流程,如注册成为开发者,签名,提交审核等。
本次项目我们就自己体验,暂时不搞那么复杂,所以打包成相应安装包就行了。
- 安卓构建APK,安装使用。
- iOS使用TestFlight。
- macOS使用TestFlight。
- windows手动打包成桌面应用程序包。
- Web部署到测试Nginx服务器体验。
详细说明文档地址:flutter.cn/docs/deploy…
持续部署
官方推荐了一些CI/CD工具:
经典案例
下面是我整理的推荐学习的官方案例,这几个项目包含了我们可能会用到的一些经典功能:
- Container 里的动画渐变效果:flutter.cn/docs/cookbo…
- 以 package 的方式使用字体:flutter.cn/docs/cookbo…
- 创建一个点击展开的 FAB:flutter.cn/docs/cookbo…
- 构建一个有验证判断的表单:flutter.cn/docs/cookbo…
- 显示网络上的远程图片:flutter.cn/docs/cookbo…
- 长列表的处理:flutter.cn/docs/cookbo…
- 用 SQLite 做数据持久化:flutter.cn/docs/cookbo…
- 单元测试介绍:flutter.cn/docs/cookbo…
- 传递数据到新页面:flutter.cn/docs/cookbo…
- 在后台处理 JSON 数据解析:flutter.cn/docs/cookbo…
本文出至:学新通技术网
系列文章:Flutter从0到1开发APP
标签: