前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >端开发技术——5个高效的Flutter开发工具

端开发技术——5个高效的Flutter开发工具

原创
作者头像
思想者杰克
修改于 2021-11-04 10:01:09
修改于 2021-11-04 10:01:09
87800
代码可运行
举报
运行总次数:0
代码可运行

1. 你是否需要更好,更简洁的日志?

当你在开发Flutter应用程序时,难以理解的日志是一个大问题,因为没有快速的方法来根据问题的严重程度过滤你的日志。抛出异常或记录一条简单的调试消息?他们看起来都一样。

如果你的Flutter app需要更好的日志系统,Logger 软件包绝对是个好东西。

Logger包地址:https://pub.dev/packages/logger

它受到Java分级日志的启发,允许您向日志添加级别。

日志级别,目前有:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
logger.v("Add more detailed debug messages, "    "can contain sensitive information, never enable it in production");​logger.d("Fine grained information to debug an application");​logger.i("Track the flow of the application");​logger.w("A potential but expected problem");​logger.e("A real failure that may impact the application state");

由于某些原因,另外一个特别的是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
logger.wtf("WTF logs??")

不仅如此,你还可以晃动你的设备来查看屏幕上的日志。(PS:需要导入logger_flutter包)

2. API还没有从后端准备好,或者根本没有API ?应用程序靠自己硬编数据?

如果你还在艰难的coding,全是自己硬编数据因为后台没有准备好他们的API或者根本没有任何API,如果你仍然希望UI有意义,您可以使用faker包——Jesper Hakansson为应用程序生成有意义的数据。

Python包faker和Ruby包ffaker的启发,这个包可以提供各种类型的数据,从虚假的人名到虚假的日期,甚至是随机的虚假url。

只需创建一个简单的对象,像这样-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
var faker = new Faker();

下面是使用faker对象的例子

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
faker.date.month();faker.conference.name();faker.company.position();faker.lorem.sentences(8);faker.internet.httpsUrl();faker.currency.name();faker.sport.name()

在这个包下还有更多种类的数据可用,这是自己硬编数据的一个很好的替代品,当项目变得更复杂时,自己硬编数据是很难替换的。

faker包地址:https://pub.dev/packages/faker/example

3. 当API返回的数据结构复杂,你需要快速构建model?

虽然我在2018年已经分享过这篇解析复杂JSON的文章,在今天它仍然非常流行。

https://medium.com/flutter-community/parsing-complex-json-in-flutter-747c46655f51

值得一提的是,这篇文章是对Dart解析json的一个很好的理论回顾,但我不建议在构建实际复杂项目时进行手动解析。

为什么不建议?

.手动操作肯定要花很长时间。

.而且你更容易犯错误。

我更建议使用转换器工具或解析器,与手动解析相比,它只需几秒钟就能完成。

当涉及到JSON序列化时,你可以在Flutter文档中找到一些推荐的方法。

当然,推荐之一是代码生成库,它将为您生成编码样板。但这仍然需要一些初始设置,而我并不喜欢。

所以,我的首选工具一直是quicktype.io。一群开源开发者维护的在线工具。

只需进入网站,选择Dart作为输出语言。

将JSON粘贴到左侧,Dart model类和JSON序列化逻辑将很快在右侧创建。

添加这个类到你的flutter项目,你就可以使用了。

4. 从一个运行着的模拟器/设备预览你的应用程序

作为一名Android开发人员,仅仅为不同的屏幕大小创建xml就需要花费好几天的时间,因为Android设备有不同的形状和大小,而且重要的是你需要让你的应用程序在不同的设备上表现一致。iOS开发人员的情况也没有什么不同,苹果公司的iPhone屏幕大小不一。有时,我们还必须支持平板电脑或iPad设备。

这是否意味着,我需要下载大量的模拟器或为我的团队购买不同的手机,以便在不同的设备上测试我们的应用的UI ?

去年,在Flutter interactive 2019, Zoey Fan和Chris Sells谈到了Flutter Octopus,在那里你可以同时在多个平台和设备调试你的应用程序。

这对于观察你的应用在不同设备上的性能是很有用的。但是你真的会设置这么多设备仅仅用来来检查UI的响应性吗?

来挽救我们的的是Alois Daniel的Flutter Device Preview。 超好用的工具,可让您从单个运行的模拟器/设备上预览不同大小的设备中的应用程序。

轻松预览在不同的屏幕大小和平台的应用程序,从普通的手机大小到平板电脑,甚至手表屏幕大小。这是检查你的应用程序有没有溢出的好方法。不仅如此,还有其他很酷的功能

★改变你的应用程序的方向,并预览你的应用程序在不同方向上的响应能力。

★更新配置,如文本缩放因子,应用的主题,地区

★能够进行截图,便于你分享给你的团队。

所有这些,不影响应用程序的状态!

device_preview 包地址:https://pub.dev/packages/device_preview

5. 使用测试版本学习,使用稳定版本工作

如果你使用Flutter中构建应用程序,你很有可能使用稳定的Flutter版本来开发和部署你的应用程序。谁会冒险在一个实验性的flutter版本上开发一个客户项目,对吗?

但是,你是一个爱尝试的的开发人员,你在你的客户或公司项目之外创建项目,你很想尝试新的beta版本,并尝试使用新特性。

但这就意味着,卸载当前的稳定版,再安装测试版,又要花费大量的时间去下载新版本的资源。

而当你重新在客户项目上工作时,你将不得不卸载测试版,并重新安装稳定版。

所以,另一个来拯救你的工具 — Flutter Version Manager by Leo Farias.

您可以使用这个工具来管理多个flutter版本,而不必每次在你切换的时候下载这些版本。这只是一个一次性的设置,你一次下载所有的版本像这样-

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fvm install beta

或者指定的版本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 fvm install <version>

只需一条命令就可以在不同版本之间切换,就像这样

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
fvm use stable

你可以为你的每个项目指定一个flutter版本。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd Documents/FlutterProjects/ExperimentalProjectfvm use beta

or

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd Documents/FlutterProjects/ClientProjectfvm use stable

在你安装fvm之后唯一改变的是你所有的命令都会稍微修改一下。

就像 flutter doctor , 变成fvm flutter doctor

这是很容易记住的。

FVM包地址:https://pub.dev/packages/fvm

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
鸿蒙版 Flutter 版本管理利器:FVM 使用指南
FVM(Flutter Version Manager)是一个专门为 Flutter 应用开发设计的版本管理工具。它允许开发者在同一台机器上安装和管理多个 Flutter 版本,解决了团队协作和项目迁移时因 Flutter 版本差异导致的兼容性问题。它允许开发者在不同的 Flutter 项目之间快速切换版本,而无需每次都下载和配置新的 Flutter SDK
徐建国
2025/05/13
600
鸿蒙版 Flutter 版本管理利器:FVM 使用指南
6种极大提升Flutter开发效率的工具包
在开发 Flutter 的过程中打印日志是常用的调试方式之一,但 Flutter 内置的日志打印非常简单,下面介绍一个强大的软件包:logger。
老孟Flutter
2020/11/11
1.4K0
6种极大提升Flutter开发效率的工具包
Flutter Web - 让 Web 与 APP UI 一致的另一种可能
当产品说要把所有移动端(小程序、H5、APP)等 UI 做成一致,又不想投入更多的开发人力。那作为开发,有哪些方案可以用呢?
Swift社区
2022/12/12
1.7K0
Flutter Web - 让 Web 与 APP UI 一致的另一种可能
Flutter 让桌面应用的开发更便捷
Flutter2稳定版的发布,除了web的支持外,还有对于桌面端的支持可以将Flutter源代码编译为本机Windows,macOS或Linux桌面应用程序。
Qson
2022/04/11
2.1K0
Flutter 让桌面应用的开发更便捷
如何快速判断 Flutter 库是否需要适配鸿蒙?纯 Dart 库无需适配!
在鸿蒙开发中,选择合适的 Flutter 库至关重要。纯 Dart 库因其跨平台特性,无需适配即可直接使用。但对于新手来说,如何判断一个库是否为纯 Dart 库呢?本文将为你提供清晰的判断方法和实用技巧。
徐建国
2025/04/23
1400
如何快速判断 Flutter 库是否需要适配鸿蒙?纯 Dart 库无需适配!
flutter实战项目之全平台(android,windows,ios,web,macos,linux)
Flutter 最近发布了 Flutter V2.5.1,其性能得到了很大提升,支持 Web、macOS、Android 和 iOS。这就是为什么今天我们使用在 Web、macOS 应用、Android 和 iOS 应用上运行的 flutter 创建响应式博客主题。此外,我们创建了一个具有自定义悬停动画的动画网络菜单。最后,您将学习如何使用 Flutter 制作响应式应用程序。
徐建国
2021/11/30
8430
flutter实战项目之全平台(android,windows,ios,web,macos,linux)
flutter的安装与配置
Flutter是一个开源软件开发工具包 (SDK),用于“帮助开发者通过一套代码库高效构建多平台精美应用,支持移动、Web、桌面和嵌入式平台”。允许跨平台开发。这样可以使您的公司和团队节省大量时间和精力。
徐建国
2021/11/30
1.9K0
flutter的安装与配置
Flutter Notes|记录开发过程中常用命令
而今 Flutter 重新开始,也要尝试掌握一波命令行的玩法,万一哪儿天可以向鸡老大秀一波呢~
贺biubiu
2020/07/14
1.2K0
Flutter Notes|记录开发过程中常用命令
dart系列之:元世界pubspec.yaml文件详解
pubspec.yaml是所有dart项目的灵魂,它包含了所有dart项目的依赖信息和其他元信息,所以pubspec.yaml就是dart项目的meta!
程序那些事
2021/11/19
7090
2020 Google 开发者大会:Android 和 Flutter 有哪些更新?
2020 年 11 月 16 日,Google 开发者大会 (Google Developer Summit) 在线上举行。本次大会以“代码不止”为主题,全面介绍了产品更新以及一系列面向本地开发者的技术支持内容。本文重点关注了 Google 在 Flutter 和 Android 方面的更新。
深度学习与Python
2020/12/07
6950
Flutter 2 正式出道(一)
相信不少人昨晚熬夜奋战,观看了Flutter Engage大会,Flutter团队也正式官宣了Flutter 2。从Flutter 1.0正式版到Flutter 2差不多有两年多一些的时间。但在这么短的时间里,Flutter团队在765个贡献者的贡献下共关闭了24541个issue,合并了17039个PR。从9月份的Flutter 1.22开始,团队在298个贡献者的贡献下共关闭了5807个issue,合并了4091个PR。
JarvanMo
2021/03/08
1.5K0
Flutter 2 正式出道(一)
【Flutter】Flutter 开发环境搭建 ( 2021年08月25日 补充最新资料 | 最新安装教程 )
【Flutter】Flutter 开发环境搭建 ( Android Studio 下 Flutter / Dart 插件安装 | Flutter SDK 安装 | 环境变量配置 | 开发环境检查 ) : https://hanshuliang.blog.csdn.net/article/details/104825048 ;
韩曙亮
2023/03/29
8480
【Flutter】Flutter 开发环境搭建 ( 2021年08月25日 补充最新资料 | 最新安装教程 )
浅谈跨平台框架 Flutter 的搭建与运行
Flutter是Google推出的跨平台的解决方案,用以帮助开发者在 Android 和 iOS 两个平台开发高质量原生应用的全新移动 UI 框架。 之前我们为大家介绍了《跨平台框架Flutter的优势与结构》,概括了Flutter选择Dart语言的必要性及其自底而上的框架结构,大家可以点击标题链接来回顾前文。在本文中,我们将带大家进一步了解Flutter的搭建与运行。
个推
2019/05/23
3.9K0
浅谈跨平台框架 Flutter 的搭建与运行
Flutter 从0到1 学习之路 part1:安装Flutter及配置变量
由于flutter与 uniapp不通,是使用dart 语法来编辑的,所以在学习flutter是还需要学习dart语言。但是相对来说执行的性能会更优一点。
KID.
2023/12/08
1.9K0
Flutter从配置安装到填坑指南详解
作者:AWeiLoveAndroid 链接:https://www.jianshu.com/p/399c01657920 本文由作者 AWeiLoveAndroid 授权发布。 在 Google
用户1269200
2018/06/22
3.7K0
Flutter基础篇(9)-- 手把手教你用Flutter实现Web页面编写
本文版权归作者AWeiLoveAndroid所有,未经授权,严禁私自转载。转载请声明原文链接和作者信息。
AWeiLoveAndroid
2019/10/23
3.3K0
Flutter基础篇(9)-- 手把手教你用Flutter实现Web页面编写
Flutter从配置安装到填坑指南详解
在 Google I/O ’17 上,Google 向我们介绍了 Flutter —— 一款新的用于创建移动应用的开源库。
AWeiLoveAndroid
2018/08/28
8.1K0
Flutter从配置安装到填坑指南详解
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutte
【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-卓伊凡换人优雅草Alex
卓伊凡
2025/02/02
1860
《Flutter》-- 2.Windows系统下搭建开发环境
学习Flutter,推荐使用mac OS系统,因个人是Windows系统的电脑,暂时只进行Android环境的搭建。开发工具可以使用Android Studio或VS Code,这里使用Android Studio,需要先安装配置JDK。
爱学习的程序媛
2022/04/07
1.8K0
《Flutter》-- 2.Windows系统下搭建开发环境
搭建Flutter开发环境的详细教程
6. dart SDK在 flutter/bin/cache/dart-sdk
用户6297767
2023/11/21
3470
搭建Flutter开发环境的详细教程
推荐阅读
相关推荐
鸿蒙版 Flutter 版本管理利器:FVM 使用指南
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验