【老孟Flutter】6種極大提升Flutter開發效率的工具包

老孟導讀:本文介紹6種極大提升Flutter開發效率的工具包。

[1] 強大的日誌軟體包

在開發 Flutter 的過程中列印日誌是常用的調試方式之一,但 Flutter 內置的日誌列印非常簡單,下面介紹一個強大的軟體包:logger

Logger 是一款易於使用且可擴展的日誌記錄器,可列印精美的日誌。 受到Android記錄器的啟發,將日誌分為不同的級別:

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");

發布內側版本時,測試人員不會將手機一直連接你的電腦,因此出現bug時無法通過控制台列印日誌,logger_flutter這個插件可以解決這個問題,此插件通過搖晃手機或者調用 LogConsole.open(context) 在手機上直接顯示日誌。

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

logger_flutter pub地址: //pub.dev/packages/logger_flutter

[2] 轉換 Json 數據為 model

通常情況下,伺服器介面返回的數據是 json 格式,將 json 格式的數據轉換為實體類是非常繁瑣的工作,尤其是複雜的 json 數據,這裡推薦大家使用 JsonToDart 插件,Android Studio 和 VS Code 編輯器上都可以安裝此插件,它可以幫我們將 json 格式的數據轉換為實體類。

詳細用法及安裝://laomengit.com/guide/data_storage/Json2Model.html

[3] 在不同解析度的手機上查看UI效果

Flutter 開發最大的優勢就是其跨平台,當開發完成時,想在不同解析度的手機查看其效果,那是否要每一款手機都買一個來進行測試?

2019年的 Flutter Interact,像我們展示了同時在多個平台和設備上調試應用程式

下面這款工具包 device_preview 可以讓您在一台設備上查看不同解析度設備上UI的效果。

不止如此,它還有其他酷炫的功能:

  • 更改設備方向
  • 動態系統配置:語言,暗模式,文本縮放比例
  • 可自由調整解析度和安全區域的設備
  • 保持應用程式狀態
  • 截圖

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

[4] 同時使用 stable 和 master

開發項目時,我們通常使用 stable channel 構建穩定版本,但同時我們也希望體驗新的版本,新的功能,那隻能切換到 master channel, 但此時穩定項目的版本也隨之切換,來回切換非常麻煩,除了每次切換都要重新下載大量文件外,也可能出現異常,每一次版本升級都會有很多人遇到項目無法編譯的問題。

那麼怎麼能夠同時存在stable channelmaster channel 呢?正常開發使用 stable channel,想體驗新版本時使用 master channel

fvm 這個插件將會幫助你,fvm是 Flutter Version Management 的簡稱,是管理Flutter SDK版本的簡單CLI。

pub 地址://pub.dev/packages/fvm

[5] 國際化工具包

有人可能覺得我的項目不需要國際化,只需要中文即可,但是我依然強烈建議你加入國際化,原因如下:

  • 以後的事情誰也說不準,是否支援國際化是老闆一句話的事。
  • 增加國際化並不會增加你的工作量,其他國家的語言可以先不翻譯,直接空著即可。

Intl 插件可以幫我們快速的完成國際化。

詳細使用://laomengit.com/guide/intl/%E4%BD%BF%E7%94%A8Intl%E5%8C%85%E5%AE%9E%E7%8E%B0%E5%9B%BD%E9%99%85%E5%8C%96.html#%E4%BD%BF%E7%94%A8intl%E5%8C%85%E5%AE%9E%E7%8E%B0%E5%9B%BD%E9%99%85%E5%8C%96

[6] 應用升級功能

最後介紹一下我自己開發的應用升級功能軟體包,升級功能應該是應用程式必備功能之一了。

目前支援 Android 和 iOS:

詳細使用://laomengit.com/plugin/upgrade.html

交流

老孟Flutter部落格(330個控制項用法+實戰入門系列文章)://laomengit.com

歡迎加入Flutter交流群(微信:laomengit)、關注公眾號【老孟Flutter】:

Tags: