Flutter 一些常用庫插件【一路整理】

網(wǎng)絡(luò)請求

http

^0.11.3+16

https://pub.dartlang.org/packages/http

https://github.com/dart-lang/http

該軟件包包含一組高級函數(shù)和類,可以輕松使用HTTP資源。它與平臺無關(guān),可以在命令行和瀏覽器上使用。

dio

0.0.14

https://pub.dartlang.org/packages/dio

Dart的一個強大的Http客戶端,支持?jǐn)r截器、全局配置、FormData、請求取消、文件下載、超時等。

http_multi_server

2.0.5

https://pub.dartlang.org/packages/http_multi_server

dart:io HttpServer包裝器,用于處理來自多個服務(wù)器的請求

圖像加載

可使用 Image.network 、 FadeInImage.memoryNetwork 或下面的庫加載。

cached_network_image

"^0.4.1"

https://pub.dartlang.org/packages/cached_network_image

Flutter庫來加載和緩存網(wǎng)絡(luò)圖像。也可以與占位符和錯誤小部件一起使用。

flutter_advanced_networkimage

0.2.8

https://pub.dartlang.org/packages/flutter_advanced_networkimage

高級圖像緩存加載和縮放控制。

transparent_image

^0.1.0

https://pub.dartlang.org/packages/transparent_image

簡單的透明圖像,表示為Uint8List。在加載圖片時可以用來做為占位符。

圖像處理

image_jpeg

0.0.1

https://pub.dartlang.org/packages/image_jpeg

https://github.com/yangyxd/image_jpeg

用于圖像上傳之前轉(zhuǎn)jpeg縮放壓縮,調(diào)用Android或iOS原生功能進行處理,性能較高,支持的源圖像格式也更多。

image_picker

0.4.5

https://pub.dartlang.org/packages/image_picker

用于從Android和iOS圖像庫中選擇圖像,并使用相機拍攝新照片。

photo

0.1.4

https://pub.dartlang.org/packages/photo

用于選擇圖像,支持多選,而且這個是用Flutter做的UI,可以很方便的自定義修改(強烈推薦)。

image

2.0.4

https://pub.dartlang.org/packages/image

DART庫,提供以各種不同的文件格式加載、保存和操作圖像的能力。該庫不依賴于DART:IO,因此它可以用于服務(wù)器和Web應(yīng)用程序。

flutter_svg

0.6.3

https://pub.dartlang.org/packages/flutter_svg

加載svg圖像。

zoomable_image

1.2.0
https://pub.dartlang.org/packages/zoomable_image

提供圖像查看和手勢縮放操作功能。

image_carousel

0.4.1

https://pub.dartlang.org/packages/image_carousel

Flutter圖像展示控件,可以左右劃動切換上一張下一張圖像,還結(jié)合了zoomable_image可以點擊后縮放查看。支持Asset和網(wǎng)絡(luò)圖像。

carousel_slider

0.0.4

https://pub.dartlang.org/packages/carousel_slider

一個支持手勢劃動和自動播放的圖像展示控件。

parallax_image

0.3.0

https://pub.dartlang.org/packages/parallax_image

視差圖像可以與任何可滾動(例如ListVIEW)一起使用。說白了就是讓放在滾動區(qū)域內(nèi)的圖像滾動時看起來更平滑。

camera

0.2.1

https://pub.dartlang.org/packages/camera

用于在Android和iOS上獲取有關(guān)和控制相機的信息。支持預(yù)覽相機饋送和捕捉圖像。

UI相關(guān)

fluttertoast

2.0.3

https://pub.dartlang.org/packages/fluttertoast

用于Android和ios的toast庫。

flutter_html_view

0.5.2

https://pub.dartlang.org/packages/flutter_html_view

Flutter沒有默認(rèn)的支持來顯示html,所以需要三方的包來顯示。這個包可以將html呈現(xiàn)給原生的Widget。(目前支持的標(biāo)簽比較少)

flutter_html_textview

0.2.6

https://pub.dartlang.org/packages/flutter_html_textview

將html呈現(xiàn)為一個Widget,在textview中呈現(xiàn)html。

markdown

2.0.0

https://pub.dartlang.org/packages/markdown

用Dart編寫的便攜式Markdown庫。它可以在客戶端和服務(wù)器上將Markdown解析為HTML。

html2md

0.1.7

https://pub.dartlang.org/packages/html2md

將html轉(zhuǎn)換為Dart中的MarkDown.

flutter_calendar (日歷)

0.0.3

https://pub.dartlang.org/packages/flutter_calendar

日歷組件.

flutter_picker

0.0.1

https://pub.dartlang.org/packages/flutter_picker

https://github.com/yangyxd/flutter_picker

選擇器。可以根據(jù)json或自定義數(shù)據(jù)生成選擇器。

flutter_spinkit

https://github.com/jogboms/flutter_spinkit

加載動畫。支持多種常用效果,非??犰?。

extended_nested_scroll_view

https://github.com/zmtzawqlp/Flutter_Candies/tree/master/extended_nested_scroll_view

一個擴展NestedScrollView,能夠更好的處理列表、TabView、Sliver混合的情況(但是這個插件沒有在pub找到)

badge

0.0.3

https://pub.dartlang.org/packages/badge

小紅點插件,可以用來顯示小紅點、未讀消息數(shù)量等,非常方便

視頻 & 音頻

chewie

0.6.1

https://pub.dartlang.org/packages/chewie

視頻播放器,在video_player的基礎(chǔ)上包裝了控制UI。

video_player

0.6.0

https://pub.dartlang.org/packages/video_player

用于在Android和iOS上與其他Flutter窗口小部件一起顯示內(nèi)嵌視頻。

video_launcher

0.3.0

https://pub.dartlang.org/packages/video_launcher

視頻播放器,可播放本地文件和字節(jié)流。

flute_music_player

0.0.6

https://pub.dartlang.org/packages/flute_music_player

基于Flutter的材料設(shè)計音樂播放器與音頻插件播放本地音樂文件。自帶華麗的播放界面。

audioplayer

0.5.0

https://pub.dartlang.org/packages/audioplayer

一個播放遠程或本地音頻文件Flutter音頻插件

audioplayers

0.5.2

https://pub.dartlang.org/packages/audioplayers

這是rxlabz的audioplayer的一個分支,不同之處在于它支持同時播放多個音頻并顯示音量控制。

spritewidget

0.9.17

https://pub.dartlang.org/packages/spritewidget

SpriteWidget是用于構(gòu)建復(fù)雜、高性能動畫和帶有2D游戲的插件包,可與其它小部件無縫混合。您可以使用SpriteWidget創(chuàng)建任何東西,從動畫圖標(biāo)到成熟的游戲。

路由和消息傳遞

fluro

1.3.1

https://pub.dartlang.org/packages/fluro

https://github.com/theyakka/fluro

最好用的路由導(dǎo)航框架。功能:簡單的路線導(dǎo)航;函數(shù)處理程序(映射到函數(shù)而不是路徑);通配符參數(shù)匹配;查詢字符串參數(shù)解析;內(nèi)置常用轉(zhuǎn)換;簡單的定制轉(zhuǎn)換創(chuàng)建。

flutter_local_notifications

0.3.0

https://pub.dartlang.org/packages/flutter_local_notifications

一個跨平臺的顯示本地notifications的插件。

local_notifications

0.0.6

https://pub.dartlang.org/packages/local_notifications

這個庫能讓你在Android和iOS上創(chuàng)建Notifications很簡單。

url_launcher

3.0.2

https://pub.dartlang.org/packages/url_launcher

用于在Android和iOS上啟動URL。支持網(wǎng)絡(luò),電話,短信和電子郵件方案。

firebase_messaging

1.0.2

https://pub.dartlang.org/packages/firebase_messaging

一款跨平臺的消息傳遞解決方案,可讓您在Android和iOS上可靠地傳遞消息。

flutter_msg_engine

0.0.1

https://pub.dartlang.org/packages/flutter_msg_engine

https://github.com/yangyxd/flutter_msg_engine

消息引擎, 注冊一個消息,在任何地方響應(yīng)并處理。。

event_bus

0.4.1

https://pub.dartlang.org/packages/event_bus

一個使用Dart流進行解耦應(yīng)用程序的簡單事件總線的庫。

數(shù)據(jù)存儲、緩存有關(guān)的庫

sqflite

"^0.11.0"

https://pub.dartlang.org/packages/sqflite

SQLite的Flutter插件,一個自包含的高可靠性嵌入式SQL數(shù)據(jù)庫引擎。

file_cache

0.0.1

https://pub.dartlang.org/packages/file_cache

為flutter package項目緩存Json,Buffer,FileCacheImage。

flutter_cache_manager

0.1.1

https://pub.dartlang.org/packages/flutter_cache_manager

管理你的app下載到本地的文件緩存。它使用緩存控制HTTP報頭有效地檢索文件。

類型編解碼的庫

html_unescape

1.0.0

https://pub.dartlang.org/packages/html_unescape

用于解決HTML編碼字符串的Dart庫。支持所有命名字符引用(如 ),小數(shù)字符引用(如á)和十六進制字符引用(如ã)。

html

0.13.3

https://pub.dartlang.org/packages/html

HTML解析庫。

crypto

2.0.6

https://pub.dartlang.org/packages/crypto

在純DART中實現(xiàn)的加解密函數(shù)庫。支持SHA-1、SHA-256、MD5、HMAC

序列化

  • 手動序列化:

使用 dart:convert 的內(nèi)置解碼器。包括傳入 JSON 原始字符串給 JSON.decode() 方法,然后從 Map<String, dynamic> 中查詢你需要的數(shù)據(jù)。

  • 自動序列化:

庫名 版本號 鏈接 描述
json_serializable 0.5.7 https://pub.dartlang.org/packages/json_serializable
built_value 5.5.1 https://pub.dartlang.org/packages/built_value runtime依賴項
built_value_generator 5.5.1 https://pub.dartlang.org/packages/built_value_generator dev依賴項
built_value_test 5.5.1 https://pub.dartlang.org/packages/built_value_test test依賴項

Json解析

方式 大小 (js) 序列化 (dart) 反序列化 (dart) 序列化 (js) 反序列化 (js)
json_serializable 80 KB 9.09 ms 6.61 ms 8.23 ms 8.12 ms
Serializable 79 KB 6.1 ms 6.92 ms 4.37 ms
DSON 94 KB 12.72 ms 11.15 ms 16.64 ms 17.94 ms
Dartson 86 KB 9.61 ms 6.81 ms 8.58 ms 7.01 ms
Manual 86 KB 8.29 ms 5.78 ms 10.7 ms 7.9 ms
Interop 70 KB 61.55 ms 14.96 ms 2.49 ms 2.93 ms
Jaguar_serializer 88 KB 8.57 ms 6.58 ms 10.31 ms 8.59 ms
Jackson (Groovy) 496 ms 252 ms n/a n/a

國際化和本地化

intl

0.15.6

https://pub.dartlang.org/packages/intl

這個包提供國際化和本地化功能,包括消息翻譯、復(fù)數(shù)和性別、日期/數(shù)字格式和解析以及雙向文本。

rx系列

rxdart

0.17.0

https://pub.dartlang.org/packages/rxdart

RxDart是一種基于ReactiveX的谷歌Dart反應(yīng)性函數(shù)編程庫。谷歌Dart自帶了一個非常不錯的流API;RxDart沒有嘗試提供這個API的替代方案,而是在它上面添加了一些功能。

rx_widgets

1.0.3

https://pub.dartlang.org/packages/rx_widgets

rx_widgets是一個包含基于流的Flutter Widgets和Widget幫助程序/便利類的程序包,它們有助于反應(yīng)式編程風(fēng)格,特別是與RxDart和RxCommands結(jié)合使用。

rx_command

2.0.0

https://pub.dartlang.org/packages/rx_command

RxCommand是針對事件處理程序的基于Reactive Extensions(Rx)的抽象。它基于ReactiveUI框架的ReactiveCommand。它大量使用了RxDart包。

系統(tǒng)平臺有關(guān)的庫

path_provider (獲取本地文件)

0.4.1

https://pub.dartlang.org/packages/path_provider

用于獲取Android和iOS文件系統(tǒng)上的常用位置,例如temp和app數(shù)據(jù)目錄。

shared_preferences (讀寫sp文件)

0.4.2

https://pub.dartlang.org/packages/shared_preferences

用于讀寫簡單鍵值對的Flutter插件。包裝iOS上的NSUserDefaults和Android上的SharedPreferences。

connectivity (網(wǎng)絡(luò)狀態(tài))

0.3.1

https://pub.dartlang.org/packages/connectivity

用于發(fā)現(xiàn)Android和iOS上的網(wǎng)絡(luò)狀態(tài)(WiFi和移動/蜂窩)連接。

device_info (設(shè)備信息)

0.2.1

https://pub.dartlang.org/packages/device_info

提供有關(guān)設(shè)備(品牌,型號等)的詳細信息,以及應(yīng)用程序正在運行的Android或iOS版本。

flutter_blue (藍牙)

0.3.3

https://pub.dartlang.org/packages/flutter_blue

這是跨平臺的藍牙sdk.

share (分享)

0.5.1

https://pub.dartlang.org/packages/share

支持分享的flutter插件

open_file (打開文件)

1.1.1

https://pub.dartlang.org/packages/open_file

調(diào)用平臺打開文件。比如直接打開一個apk文件會調(diào)起平臺的安裝向?qū)А?/p>

權(quán)限庫

simple_permissions

0.1.5

https://pub.dartlang.org/packages/simple_permissions

用于android和ios的請求權(quán)限的庫

flutter_simple_permissions

0.0.1

https://pub.dartlang.org/packages/flutter_simple_permissions

地圖(地圖顯示、定位、經(jīng)緯度等)

map_view

0.0.12

https://pub.dartlang.org/packages/map_view

一個用于在iOS和Android上顯示谷歌地圖的Flutter插件

flutter_map

0.0.10

https://pub.dartlang.org/packages/flutter_map

基于leaflet的Flutter地圖包

location

1.3.4

https://pub.dartlang.org/packages/location

這個插件 處理Android和iOS上的位置。它還提供位置更改時的回調(diào)。

latlong

0.5.3

https://pub.dartlang.org/packages/latlong

LatLong是一個計算通用的緯度和經(jīng)度的輕量級庫。

flutter_amap

0.0.1

https://pub.dartlang.org/packages/flutter_amap

高德地圖3d flutter組件。展示原生android、ios高德地圖,并與flutter交互。

二維碼

barcode_scan

0.0.4

https://pub.dartlang.org/packages/barcode_scan

用于掃描2D條形碼和QRCodes的Flutter插件。

qrcode_reader

0.3.3

https://pub.dartlang.org/packages/qrcode_reader

使用相機讀取二維碼的Flutter插件。

WebView

flutter_webview_plugin

0.1.6

https://pub.dartlang.org/packages/flutter_webview_plugin

允許Flutter與原生Webview進行通信的插件。

圖表庫

charts-common

0.3.0

https://pub.dartlang.org/packages/charts_flutter

Material Design風(fēng)格的圖表庫

charts-flutter

0.3.0

https://pub.dartlang.org/packages/charts_common

通用的圖表庫組件

flutter_circular_chart

0.0.3

https://pub.dartlang.org/packages/flutter_circular_chart

一個讓你使用flutter輕松創(chuàng)建的動畫圓形圖控件的庫。

其它

pwa

0.1.10

https://pub.dartlang.org/packages/pwa

基于Dart的PWA應(yīng)用程序的庫

fluwx (微信)

0.5.5

https://pub.dartlang.org/packages/fluwx

適用于Flutter的微信SDK,方便快捷。 QQ群:892398530。

alipay_me (支付寶)

1.0.0

https://pub.dartlang.org/packages/alipay_me

支付寶插件,支持登錄、支付。android還支持本地計算簽名。

flutter_qq (QQ)

0.0.4

https://pub.dartlang.org/packages/flutter_qq

QQ登錄、分享到QQ、分享到QQ空間。

學(xué)習(xí)資料

https://github.com/AweiLoveAndroid/Flutter-learning

網(wǎng)友阿韋整理的學(xué)習(xí)資料和demo.

順便給大家推薦個免費的實用例子課程,

Flutter實用例子進階課程

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容