
老孟導(dǎo)讀:本文介紹6種極大提升Flutter開(kāi)發(fā)效率的工具包。
[1] 強(qiáng)大的日志軟件包
在開(kāi)發(fā) Flutter 的過(guò)程中打印日志是常用的調(diào)試方式之一,但 Flutter 內(nèi)置的日志打印非常簡(jiǎn)單,下面介紹一個(gè)強(qiáng)大的軟件包:logger。
Logger 是一款易于使用且可擴(kuò)展的日志記錄器,可打印精美的日志。 受到Android記錄器的啟發(fā),將日志分為不同的級(jí)別:
logger.v("Verbose log");
logger.d("Debug log");
logger.i("Info log");
logger.w("Warning log");
logger.e("Error log");
logger.wtf("What a terrible failure log");

發(fā)布內(nèi)側(cè)版本時(shí),測(cè)試人員不會(huì)將手機(jī)一直連接你的電腦,因此出現(xiàn)bug時(shí)無(wú)法通過(guò)控制臺(tái)打印日志,logger_flutter這個(gè)插件可以解決這個(gè)問(wèn)題,此插件通過(guò)搖晃手機(jī)或者調(diào)用 LogConsole.open(context) 在手機(jī)上直接顯示日志。

Logger pub地址:https://pub.dev/packages/logger
logger_flutter pub地址: https://pub.dev/packages/logger_flutter
[2] 轉(zhuǎn)換 Json 數(shù)據(jù)為 model
通常情況下,服務(wù)器接口返回的數(shù)據(jù)是 json 格式,將 json 格式的數(shù)據(jù)轉(zhuǎn)換為實(shí)體類(lèi)是非常繁瑣的工作,尤其是復(fù)雜的 json 數(shù)據(jù),這里推薦大家使用 JsonToDart 插件,Android Studio 和 VS Code 編輯器上都可以安裝此插件,它可以幫我們將 json 格式的數(shù)據(jù)轉(zhuǎn)換為實(shí)體類(lèi)。

詳細(xì)用法及安裝:http://laomengit.com/guide/data_storage/Json2Model.html
[3] 在不同分辨率的手機(jī)上查看UI效果
Flutter 開(kāi)發(fā)最大的優(yōu)勢(shì)就是其跨平臺(tái),當(dāng)開(kāi)發(fā)完成時(shí),想在不同分辨率的手機(jī)查看其效果,那是否要每一款手機(jī)都買(mǎi)一個(gè)來(lái)進(jìn)行測(cè)試?
2019年的 Flutter Interact,像我們展示了同時(shí)在多個(gè)平臺(tái)和設(shè)備上調(diào)試應(yīng)用程序

下面這款工具包 device_preview 可以讓您在一臺(tái)設(shè)備上查看不同分辨率設(shè)備上UI的效果。


不止如此,它還有其他酷炫的功能:
- 更改設(shè)備方向
- 動(dòng)態(tài)系統(tǒng)配置:語(yǔ)言,暗模式,文本縮放比例
- 可自由調(diào)整分辨率和安全區(qū)域的設(shè)備
- 保持應(yīng)用程序狀態(tài)
- 截圖
device_preview 地址:https://pub.dev/packages/device_preview
[4] 同時(shí)使用 stable 和 master
開(kāi)發(fā)項(xiàng)目時(shí),我們通常使用 stable channel 構(gòu)建穩(wěn)定版本,但同時(shí)我們也希望體驗(yàn)新的版本,新的功能,那只能切換到 master channel, 但此時(shí)穩(wěn)定項(xiàng)目的版本也隨之切換,來(lái)回切換非常麻煩,除了每次切換都要重新下載大量文件外,也可能出現(xiàn)異常,每一次版本升級(jí)都會(huì)有很多人遇到項(xiàng)目無(wú)法編譯的問(wèn)題。
那么怎么能夠同時(shí)存在stable channel 和 master channel 呢?正常開(kāi)發(fā)使用 stable channel,想體驗(yàn)新版本時(shí)使用 master channel 。
fvm 這個(gè)插件將會(huì)幫助你,fvm是 Flutter Version Management 的簡(jiǎn)稱(chēng),是管理Flutter SDK版本的簡(jiǎn)單CLI。

pub 地址:https://pub.dev/packages/fvm
[5] 國(guó)際化工具包
有人可能覺(jué)得我的項(xiàng)目不需要國(guó)際化,只需要中文即可,但是我依然強(qiáng)烈建議你加入國(guó)際化,原因如下:
- 以后的事情誰(shuí)也說(shuō)不準(zhǔn),是否支持國(guó)際化是老板一句話的事。
- 增加國(guó)際化并不會(huì)增加你的工作量,其他國(guó)家的語(yǔ)言可以先不翻譯,直接空著即可。
Intl 插件可以幫我們快速的完成國(guó)際化。

[6] 應(yīng)用升級(jí)功能
最后介紹一下我自己開(kāi)發(fā)的應(yīng)用升級(jí)功能軟件包,升級(jí)功能應(yīng)該是應(yīng)用程序必備功能之一了。
目前支持 Android 和 iOS:

詳細(xì)使用:http://laomengit.com/plugin/upgrade.html
交流
老孟Flutter博客(330個(gè)控件用法+實(shí)戰(zhàn)入門(mén)系列文章):http://laomengit.com