Flutter 資源收集
Flutter社群和資源傳送門
新: 慕課網《Flutter入門與案例實戰》 | 中文網《Flutter實戰》電子書
- 字型圖示生成 http://fluttericon.com/
- Flutter中文網 https://flutterchina.club
- Flutter官網 https://flutter.io
- Flutter中文開發者論壇 http://flutter-dev.cn/
- Flutter|Dart語言中文社群 http://www.cndartlang.com/flutter
- Dart開源包 https://pub.dartlang.org/packages
- Dart SDK文件 https://api.dartlang.org/stable/1.24.3/index.html
- 學習資料 https://marcinszalek.pl/
- Flutter佈局控制元件 https://juejin.im/post/5bab35ff5188255c3272c228
- Flutter開發者 http://flutter.link/
- Flutter開源APP https://itsallwidgets.com/
- 深入理解(Flutter Platform Channel )https://www.jianshu.com/p/39575a90e820
- 簡書 - 閒魚技術
網路請求
http
^0.11.3+16
https://pub.dartlang.org/packages/http
https://github.com/dart-lang/http
該軟體包包含一組高階函式和類,可以輕鬆使用HTTP資源。它與平臺無關,可以在命令列和瀏覽器上使用。
dio (推薦使用)
0.0.14
https://pub.dartlang.org/packages/dio
Dart的一個強大的Http客戶端,支援攔截器、全域性配置、FormData、請求取消、檔案下載、超時等。
http_multi_server
2.0.5
https://pub.dartlang.org/packages/http_multi_server
dart:io HttpServer包裝器,用於處理來自多個伺服器的請求
影象載入
可使用 Image.network 、 FadeInImage.memoryNetwork 或下面的庫載入。
cached_network_image
0.4.1
https://pub.dartlang.org/packages/cached_network_image
Flutter庫來載入和快取網路影象。也可以與佔位符和錯誤小部件一起使用。
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
用於影象上傳之前轉jpeg縮放壓縮,呼叫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,因此它可以用於伺服器和Web應用程式。
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影象展示控制元件,可以左右划動切換上一張下一張影象,還結合了zoomable_image可以點選後縮放檢視。支援Asset和網路影象。
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)一起使用。說白了就是讓放在滾動區域內的影象滾動時看起來更平滑。
camera
0.2.1
https://pub.dartlang.org/packages/camera
用於在Android和iOS上獲取有關和控制相機的資訊。支援預覽相機饋送和捕捉影象。
UI相關
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沒有預設的支援來顯示html,所以需要三方的包來顯示。這個包可以將html呈現給原生的Widget。(目前支援的標籤比較少)
flutter_html_textview
0.2.6
https://pub.dartlang.org/packages/flutter_html_textview
將html呈現為一個Widget,在textview中呈現html。
markdown
2.0.0
https://pub.dartlang.org/packages/markdown
用Dart編寫的行動式Markdown庫。它可以在客戶端和伺服器上將Markdown解析為HTML。
html2md
0.1.7
https://pub.dartlang.org/packages/html2md
將html轉換為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
選擇器。可以根據json或自定義資料生成選擇器。
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
小紅點外掛,可以用來顯示小紅點、未讀訊息數量等,非常方便
視訊 & 音訊
chewie
0.6.1
https://pub.dartlang.org/packages/chewie
視訊播放器,在video_player的基礎上包裝了控制UI。
video_player
0.6.0
https://pub.dartlang.org/packages/video_player
用於在Android和iOS上與其他Flutter視窗小部件一起顯示內嵌視訊。
video_launcher
0.3.0
https://pub.dartlang.org/packages/video_launcher
視訊播放器,可播放本地檔案和位元組流。
flute_music_player
0.0.6
https://pub.dartlang.org/packages/flute_music_player
基於Flutter的材料設計音樂播放器與音訊外掛播放本地音樂檔案。自帶華麗的播放介面。
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是用於構建複雜、高效能動畫和帶有2D遊戲的外掛包,可與其它小部件無縫混合。您可以使用SpriteWidget建立任何東西,從動畫圖示到成熟的遊戲。
路由和訊息傳遞
fluro
1.3.1
https://pub.dartlang.org/packages/fluro
https://github.com/theyakka/fluro
最好用的路由導航框架。功能:簡單的路線導航;函式處理程式(對映到函式而不是路徑);萬用字元引數匹配;查詢字串引數解析;內建常用轉換;簡單的定製轉換建立。
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上建立Notifications很簡單。
url_launcher
3.0.2
https://pub.dartlang.org/packages/url_launcher
用於在Android和iOS上啟動URL。支援網路,電話,簡訊和電子郵件方案。
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
訊息引擎, 註冊一個訊息,在任何地方響應並處理。。
event_bus
0.4.1
https://pub.dartlang.org/packages/event_bus
一個使用Dart流進行解耦應用程式的簡單事件匯流排的庫。
資料儲存、快取有關的庫
sqflite
0.11.0
https://pub.dartlang.org/packages/sqflite
SQLite的Flutter外掛,一個自包含的高可靠性嵌入式SQL資料庫引擎。
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庫。支援所有命名字元引用(如 ),小數字符引用(如á)和十六進位制字元引用(如ã)。
html
0.13.3
https://pub.dartlang.org/packages/html
HTML解析庫。
crypto
2.0.6
https://pub.dartlang.org/packages/crypto
在純DART中實現的加解密函式庫。支援SHA-1、SHA-256、MD5、HMAC
序列化
手動序列化:
使用 dart:convert 的內建解碼器。包括傳入 JSON 原始字串給 JSON.decode() 方法,然後從 Map<String, dynamic> 中查詢你需要的資料。
自動序列化:
庫名 版本號 連結 描述
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解析
https://github.com/javiercbk/json_to_dart 根據json生成Dart實體類
https://pub.dartlang.org/packages/json_schema json解析
https://github.com/debuggerx01/JSONFormat4Flutter 這是一個AS的輔助外掛,將JSONObject格式的String解析成Dart的實體類
Dson 0.13.2 下載地址
https://pub.dartlang.org/packages/dson
描述:Dson的github地址 https://github.com/drails-dart/dson DSON是一個將Dart物件轉換為JSON的庫。(用於web)這個庫是Dartson的一個分支,但又有不同。
Dartson
Dartson是一個Dart庫,可用於將Dart物件轉換為JSON字串。
https://github.com/eredo/dartson (用於web)
國際化和本地化
intl
0.15.6
https://pub.dartlang.org/packages/intl
這個包提供國際化和本地化功能,包括訊息翻譯、複數和性別、日期/數字格式和解析以及雙向文字。
rx系列
rxdart
0.17.0
https://pub.dartlang.org/packages/rxdart
RxDart是一種基於ReactiveX的谷歌Dart反應性函式程式設計庫。谷歌Dart自帶了一個非常不錯的流API;RxDart沒有嘗試提供這個API的替代方案,而是在它上面添加了一些功能。
rx_widgets
1.0.3
https://pub.dartlang.org/packages/rx_widgets
rx_widgets是一個包含基於流的Flutter Widgets和Widget幫助程式/便利類的程式包,它們有助於反應式程式設計風格,特別是與RxDart和RxCommands結合使用。
rx_command
2.0.0
https://pub.dartlang.org/packages/rx_command
RxCommand是針對事件處理程式的基於Reactive Extensions(Rx)的抽象。它基於ReactiveUI框架的ReactiveCommand。它大量使用了RxDart包。
系統平臺有關的庫
path_provider (獲取本地檔案)
0.4.1
https://pub.dartlang.org/packages/path_provider
用於獲取Android和iOS檔案系統上的常用位置,例如temp和app資料目錄。
shared_preferences (讀寫sp檔案)
0.4.2
https://pub.dartlang.org/packages/shared_preferences
用於讀寫簡單鍵值對的Flutter外掛。包裝iOS上的NSUserDefaults和Android上的SharedPreferences。
connectivity (網路狀態)
0.3.1
https://pub.dartlang.org/packages/connectivity
用於發現Android和iOS上的網路狀態(WiFi和移動/蜂窩)連線。
device_info (裝置資訊)
0.2.1
https://pub.dartlang.org/packages/device_info
提供有關裝置(品牌,型號等)的詳細資訊,以及應用程式正在執行的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
呼叫平臺開啟檔案。比如直接開啟一個apk檔案會調起平臺的安裝嚮導。
許可權庫
simple_permissions
0.1.5
https://pub.dartlang.org/packages/simple_permissions
用於android和ios的請求許可權的庫
flutter_simple_permissions
0.0.1
https://pub.dartlang.org/packages/flutter_simple_permissions
地圖(地圖顯示、定位、經緯度等)
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上的位置。它還提供位置更改時的回撥。
latlong
0.5.3
https://pub.dartlang.org/packages/latlong
LatLong是一個計算通用的緯度和經度的輕量級庫。
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風格的圖表庫
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輕鬆建立的動畫圓形圖控制元件的庫。
其它
pwa
0.1.10
https://pub.dartlang.org/packages/pwa
基於Dart的PWA應用程式的庫
fluwx (微信)
0.5.5
https://pub.dartlang.org/packages/fluwx
適用於Flutter的微信SDK,方便快捷