flutter 經常使用開源包

網絡請求

庫名 版本號 連接 描述
http 0.11.3+16 pub.dartlang.org/packages/ht… 該軟件包包含一組高級函數和類,能夠輕鬆使用HTTP資源。它與平臺無關,能夠在命令行和瀏覽器上使用。
dio 0.0.14 pub.dartlang.org/packages/di… Dart的一個強大的Http客戶端,支持攔截器、全局配置、FormData、請求取消、文件下載、超時等。
http_multi_server 2.0.5 pub.dartlang.org/packages/ht… dart:io HttpServer包裝器,用於處理來自多個服務器的請求

推送

庫名 版本號 連接 描述
jpush_flutter 0.1.0 pub.dev/packages/jp… 極光推送 官網

二維碼

庫名 版本號 連接 描述
qr_flutter 1.1.3 pub.dartlang.org/packages/qr… QR.Flutter是一個Flutter庫,可經過Widget或自定義Paint進行簡單快速的QR碼渲染。
barcode_scan 0.0.4 pub.dartlang.org/packages/ba… 用於掃描2D條形碼和QRCodes的Flutter插件。
qrcode_reader 0.3.3 pub.dartlang.org/packages/qr… 使用相機讀取二維碼的Flutter插件。

系統平臺有關的庫:

類型 庫名 版本號 連接 描述
分享(官方的庫) share 0.5.2 pub.dartlang.org/packages/sh… 用於經過平臺共享UI共享內容,使用Android上的ACTION_SEND意圖和iOS上的UIActivityViewController。
獲取本地文件 path_provider 0.4.1 pub.dartlang.org/packages/pa… 用於獲取Android和iOS文件系統上的經常使用位置,例如temp和app數據目錄。
讀寫sp文件 shared_preferences 0.4.2 pub.dartlang.org/packages/sh… 用於讀寫簡單鍵值對的Flutter插件。包裝iOS上的NSUserDefaults和Android上的SharedPreferences。
網絡狀態有關 connectivity 0.3.1 pub.dartlang.org/packages/co… 用於發現Android和iOS上的網絡狀態(WiFi和移動/蜂窩)鏈接。
設備信息 device_info 0.2.1 pub.dartlang.org/packages/de… 提供有關設備(品牌,型號等)的詳細信息,以及應用程序正在運行的Android或iOS版本。
藍牙 flutter_blue 0.3.3 pub.dartlang.org/packages/fl… 這是跨平臺的藍牙sdk.
藍牙 flutter_ble_lib 1.0.0 pub.dartlang.org/packages/fl… 這是一個支持藍牙鏈接的flutter庫。它裏面使用RxAndroidBle和RxBluetoothKit做爲本地庫。

圖片加載和緩存

使用Image.network,或者使用下面這個庫:html

庫名 版本號 連接 描述
cached_network_image 0.4.1+1 pub.dartlang.org/packages/ca… Flutter庫來加載和緩存網絡圖像。也能夠與佔位符和錯誤小部件一塊兒使用。

MarkDown

庫名 版本號 連接 描述
flutter_markdown 0.1.3 github.com/flutter/flu… 官方的MarkDown庫,它支持原始MarkDown格式,但沒有內聯Html格式。
markdown 2.0.0 pub.dartlang.org/packages/ma… 用Dart編寫的便攜式Markdown庫。它能夠在客戶端和服務器上將Markdown解析爲HTML。
html2md 0.1.7 pub.dartlang.org/packages/ht… 將html轉換爲Dart中的MarkDown.

消息傳遞通訊有關

庫名 版本號 連接 描述
flutter_local_notifications 0.3.0 pub.dartlang.org/packages/fl… 一個跨平臺的顯示本地notifications的插件。
local_notifications 0.0.6 pub.dartlang.org/packages/lo… 這個庫能讓你在Android和iOS上建立Notifications很簡單。
url_launcher 3.0.2 pub.dartlang.org/packages/ur… 用於在Android和iOS上啓動URL。支持網絡,電話,短信和電子郵件方案。
firebase_messaging 1.0.2 pub.dartlang.org/packages/fi… 一款跨平臺的消息傳遞解決方案,可以讓您在Android和iOS上可靠地傳遞消息。
event_bus 0.4.1 pub.dartlang.org/packages/ev… 一個使用Dart流進行解耦應用程序的簡單事件總線的庫。

視頻 & 音頻

庫名 版本號 連接 描述
video_player 0.6.0 pub.dartlang.org/packages/vi… 用於在Android和iOS上與其餘Flutter窗口小部件一塊兒顯示內嵌視頻。
video_launcher 0.3.0 pub.dartlang.org/packages/vi… 視頻播放器
flute_music_player 0.0.6 pub.dartlang.org/packages/fl… 基於Flutter的材料設計音樂播放器與音頻插件播放本地音樂文件.
audioplayer 0.5.0 pub.dartlang.org/packages/au… 一個播放遠程或本地音頻文件Flutter音頻插件
audioplayers 0.5.2 pub.dartlang.org/packages/au… 這是rxlabz的audioplayer的一個分支,不一樣之處在於它支持同時播放多個音頻並顯示音量控制。

類型編解碼的庫

庫名 版本號 連接 描述
html_unescape 1.0.0 pub.dartlang.org/packages/ht… 用於解決HTML編碼字符串的Dart庫。支持全部命名字符引用(如 ),小數字符引用(如á)和十六進制字符引用(如ã)。
gbk2utf8 github.com/jzoom/gbk2u… 官方的http還不能支持中文gbk的解析,這個項目就是爲了解決gbk轉成utf-8編碼的。

序列化

  • 手動序列化android

    使用 dart:convert 的內置解碼器。包括傳入 JSON 原始字符串給 JSON.decode() 方法,而後從 Map<String, dynamic> 中查詢你須要的數據。
    複製代碼
  • 自動序列化ios

庫名 版本號 連接 描述
json_serializable 0.5.7 pub.dartlang.org/packages/js…
built_value 5.5.1 pub.dartlang.org/packages/bu… runtime依賴項
built_value_generator 5.5.1 pub.dartlang.org/packages/bu… dev依賴項
built_value_test 5.5.1 pub.dartlang.org/packages/bu… test依賴項

json解析

庫名 版本號 連接 描述
codable 1.0.0-beta.2 pub.dartlang.org/packages/co… 用於將動態結構化數據(JSON,YAML)轉換爲Dart類型的庫。
json_to_dart github.com/javiercbk/j… 根據json生成Dart實體類
JSONFormat4Flutter github.com/debuggerx01… 這是一個AS的輔助插件,將JSONObject格式的String解析成Dart的實體類
Dson 0.13.2 pub.dartlang.org/packages/ds… Dson的github地址 github.com/drails-dart… DSON是一個將Dart對象轉換爲JSON的庫。(用於web)這個庫是Dartson的一個分支,但又有不一樣。
Dartson是一個Dart庫,可用於將Dart對象轉換爲JSON字符串。 github.com/eredo/darts… (用於web)

幾個Json庫的比較:github.com/drails-dart…git

方式 大小 (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

編解碼、加密解密有關的庫

庫名 版本號 連接 描述
ninja 1.0.0 pub.dartlang.org/packages/ni… 在Dart的Converter和Codec接口上完善的AES以及RSA加密解密算法的庫。
archive 2.0.0 pub.dartlang.org/packages/ar… 爲各類存檔和壓縮格式提供編碼器和解碼器,如zip,tar,bzip2,gzip和zlib。(不知道移動端可否用獲得,文檔說服務端和web端能夠用。)

國際化和本地化:

庫名 版本號 連接 描述
intl 0.15.6 pub.dartlang.org/packages/in… 這個包提供國際化和本地化功能,包括消息翻譯、複數和性別、日期/數字格式和解析以及雙向文本。

數據存儲、緩存有關的庫

庫名 版本號 連接 描述
sqflite 0.10.0 pub.dartlang.org/packages/sq… SQLite的Flutter插件,一個自包含的高可靠性嵌入式SQL數據庫引擎。
file_cache 0.0.1 pub.dartlang.org/packages/fi… 爲flutter package項目緩存Json,Buffer,FileCacheImage。

UI庫

庫名 版本號 連接 描述
font_awesome_flutter 7.0.0 pub.dartlang.org/packages/fo… 圖標字體的一個庫
fluttertoast 2.0.3 pub.dartlang.org/packages/fl… 用於Android和ios的toast庫。
image_picker 0.4.5 pub.dartlang.org/packages/im… 用於從Android和iOS圖像庫中選擇圖像,並使用相機拍攝新照片。
camera 0.2.1 pub.dartlang.org/packages/ca… 用於在Android和iOS上獲取有關和控制相機的信息。支持預覽相機饋送和捕捉圖像。

圖標有關的開源庫

庫名 版本號 連接 描述
cupertino_icons 0.1.2 pub.dartlang.org/packages/cu… Cupertino的圖標組件庫
flutter_launcher_icons 0.6.0 pub.dartlang.org/packages/fl… 或者github地址https://github.com/fluttercommunity/flutter_launcher_icons 一個命令行工具,簡化了更新Flutter應用程序啓動圖標的任務。 徹底靈活,您能夠選擇要更新啓動圖標的平臺,若是須要,能夠選擇保留舊的啓動圖標,以防未來某個時候還原舊圖標。

富文本

庫名 版本號 連接 描述
flutter_html_view 0.5.2 pub.dartlang.org/packages/fl… Flutter沒有默認的支持來顯示html,因此須要三方的包來顯示。這個包能夠將html呈現給原生的Widget。(目前支持的標籤比較少)
flutter_html_textview 0.2.6 pub.dartlang.org/packages/fl… 將html呈現爲一個Widget,在textview中呈現html。

動畫

庫名 版本號 連接 描述
flutter_villains 1.0.1 pub.dartlang.org/packages/fl… 頁面切換動畫的一個庫,簡化動畫操做,你只須要管理好UI就能夠了。

針對Android和ios平臺的UI適配庫

庫名 版本號 連接 描述
platform_aware 0.4.0 pub.dartlang.org/packages/pl… 爲自動適應當前平臺而包裝的Flutter組件,不須要對iOS和Android進行代碼更改。全部小部件都依賴於Theme.of(context).platform來肯定當前活動平臺的平臺。你可使用Flutter Inspector動態地更改平臺。
native_widgets 0.0.3 pub.dartlang.org/packages/na… 爲避免重複代碼,只編寫一次代碼就能夠支持兩個平臺並自動根據平臺自動使用對應風格組件,Android將使用材料設計,iOS將使用Cupertino風格的小部件。

日曆庫(主要是用於顯示和操做日曆)

庫名 版本號 連接 描述
flutter_calendar 0.0.4 pub.dartlang.org/packages/fl… 適用於Flutter的日曆小組件。
calendarro 0.0.1 pub.dartlang.org/packages/ca… Flutter的日曆組件庫。 這個庫提供了多種自定義組件的方法。

日期,時間,日期時間,icon,自定義數據的選擇器(很全面)

庫名 版本號 連接 描述
flutter_picker 0.0.3 pub.dartlang.org/packages/fl… 一個日期,時間,日期時間,icon,自定義數據的選擇器,能夠居中彈窗,也能夠在底部彈出。(目前來看是最全面的一個選擇器控件。該插件支持ios和android平臺,使用的是ios的風格的UI效果。)

圖片選擇的庫

庫名 版本號 連接 描述
image_picker 0.4.5 pub.dartlang.org/packages/im… 適用於iOS和Android的Flutter插件,用於從圖像庫中拾取圖像,並使用相機拍攝新照片。(功能正在完善中)
flutter_multiple_image_picker 0.0.1 pub.dartlang.org/packages/fl… 一個新的Flutter插件,用於從圖庫中選擇多個圖像。

聯繫人選擇的庫

庫名 版本號 連接 描述
contact_picker 0.0.2 pub.dartlang.org/packages/co… 使用此插件,Flutter應用程序能夠地址簿中選擇聯繫人,並將聯繫人信息返回給應用程序,而且不須要用戶的任何特殊權限。目前該插件僅支持選擇電話號碼。

顏色選擇的庫

庫名 版本號 連接 描述
flutter_color_picker 0.0.1 pub.dartlang.org/packages/fl… 一個簡單的顏色選擇器,相似於安卓的selector的功能,能夠在點擊控件時,給控件設置選擇器效果。
material_color_picker 0.0.1 pub.dartlang.org/packages/ma… 這個是Flutter的顏色選擇器,基於Google Docs顏色選擇器。這個用於選擇顏色,你想用哪個顏色,能夠彈窗自由選擇。
material_pickers 0.0.2 pub.dartlang.org/packages/ma… 這個是Flutter的顏色選擇器,基於Google Docs顏色選擇器。這個用於選擇顏色,你想用哪個顏色,能夠彈窗自由選擇。
flutter_colorpicker 0.0.5 pub.dartlang.org/packages/fl… 這是一個HSV的顏色選擇器

輪播圖有關的庫(以及Tab PagerView有關的庫)

庫名 版本號 連接 描述
flutter_swiper 1.0.4 pub.dartlang.org/packages/fl… 對應的github地址https://github.com/best-flutter/flutter_swiper
infinity_page_view 1.0.0 pub.dartlang.org/packages/in… Flutter無限頁面視圖。
carousel 0.1.0 pub.dartlang.org/packages/ca…
page_transformer 0.0.1 pub.dartlang.org/packages/pa… 用於在Flutter中建立漂亮的PageView視差效果的示例項目。

導航欄有關的庫

庫名 版本號 連接 描述
navigation_bar 0.0.1 pub.dartlang.org/packages/na… 一個簡易的底部導航欄。

列表有關的庫

庫名 版本號 連接 描述
flutter_pagewise 0.2.0 pub.dartlang.org/packages/fl… 一次加載一頁(或批處理)內容(也稱爲延遲加載)
lazy_load_scrollview 0.0.2 pub.dartlang.org/packages/la… ScrollView的包裝器,能夠啓用延遲加載,當到達頁面底部時將觸發回調。

路由

庫名 版本號 連接 描述
fluro 1.3.1 pub.dartlang.org/packages/fl… 最好用的路由導航框架。功能:簡單的路線導航;函數處理程序(映射到函數而不是路徑);通配符參數匹配;查詢字符串參數解析;內置經常使用轉換;簡單的定製轉換建立。

rx系列

庫名 版本號 連接 描述
rxdart 0.17.0 pub.dartlang.org/packages/rx… RxDart是一種基於ReactiveX的Dart反應性函數編程庫。Dart自帶了一個很是不錯的流API;RxDart沒有嘗試提供這個API的替代方案,而是在它上面添加了一些功能。
rx_widgets 1.0.3 pub.dartlang.org/packages/rx… rx_widgets是一個包含基於流的Flutter Widgets和Widget幫助程序/便利類的程序包,它們有助於反應式編程風格,特別是與RxDart和RxCommands結合使用。
rx_command 2.0.0 pub.dartlang.org/packages/rx… RxCommand是針對事件處理程序的基於Reactive Extensions(Rx)的抽象。它基於ReactiveUI框架的ReactiveCommand。它大量使用了RxDart包。

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

庫名 版本號 連接 描述
map_view 0.0.12 pub.dartlang.org/packages/ma… 一個用於在iOS和Android上顯示谷歌地圖的Flutter插件
flutter_map 0.0.10 pub.dartlang.org/packages/fl… 基於leaflet的Flutter地圖包
location 1.3.4 pub.dartlang.org/packages/lo… 這個插件 處理Android和iOS上的位置。它還提供位置更改時的回調。
latlong 0.5.3 pub.dartlang.org/packages/la… LatLong是一個計算通用的緯度和經度的輕量級庫。

WebView

庫名 版本號 連接 描述
flutter_webview_plugin 0.1.6 pub.dartlang.org/packages/fl… 容許Flutter與原生Webview進行通訊的插件。

圖表庫

庫名 版本號 連接 描述
charts-common 0.3.0 pub.dartlang.org/packages/ch… Material Design風格的圖表庫
charts-flutter 0.3.0 pub.dartlang.org/packages/ch… 通用的圖表庫組件
flutter_circular_chart 0.0.3 pub.dartlang.org/packages/fl… 一個讓你使用flutter輕鬆建立的動畫圓形圖控件的庫。

權限庫

庫名 版本號 連接 描述
simple_permissions 0.1.5 pub.dartlang.org/packages/si… 用於android和ios的請求權限的庫
flutter_simple_permissions 0.0.1 pub.dartlang.org/packages/fl… 權限申請的庫

分享

庫名 版本號 連接 描述
share 0.5.1 pub.dartlang.org/packages/sh… 支持分享的flutter插件

統計

庫名 版本號 連接 描述
flutter_umeng_analytics 0.0.1 pub.dartlang.org/packages/fl… 這個庫集成了友盟統計sdk

登錄

庫名 版本 號 連接 描述
flutter_qq 0.0.1 pub.dartlang.org/packages/fl… 這個庫集成了QQ登陸、QQ分享、QQ空間分享。
flutter_wechat 0.1.2 pub.dartlang.org/packages/fl… 這個庫集成了微信,支持微信登陸、分享、支付。

支付

庫名 版本號 連接 描述
flutter_alipay 0.1.0 pub.dartlang.org/packages/fl… 這個庫繼承了支付寶,兼容android和ios

視頻播放(本地視頻、在線視頻、或者rtmp格式)

庫名 版本號 連接 描述
my_aliplayer github.com/hyz1992/my_… 集成了aliyun播放器,能夠用來播放視頻,也能夠播放rtmp格式。

一個好玩的庫

庫名 版本號 連接 描述
pwa 0.1.10 pub.dartlang.org/packages/pw… 基於Dart的PWA應用程序的庫
相關文章
相關標籤/搜索