Flutter 一些常用第三方库、插件

网络请求

http  

^0.12.0+2

https://pub.dev/packages/http

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

该软件包包含一组高级函数和类,可以轻松使用HTTP资源。它与平台无关,可以在命令行和浏览器上使用。

dio

^2.1.13

https://pub.dev/packages/dio

Dart的一个强大的Http客户端,支持拦截器、全局配置、FormData、请求取消、文件下载、超时等。

http_multi_server

^2.0.5

https://pub.dev/packages/http_multi_server

dart:io HttpServer包装器,用于处理来自多个服务器的请求

cookie_jar

^1.0.1

https://pub.dev/packages/cookie_jar

一个用于Dart中http请求的cookie管理器,通过它您可以轻松地处理复杂的cookie策略和持久化cookie

UI相关

fluttertoast

^3.1.0

https://pub.dev/packages/fluttertoast

用于Android和ios的toast库。

flutter_swiper

^1.1.6

https://pub.dev/packages/flutter_swiper

flutter最强大的siwiper, 多种布局方式,无限轮播,Android和IOS双端适配

flutter_webview_plugin

^0.3.5

https://pub.dev/packages/flutter_webview_plugin

加载webview,允许Flutter与本机WebView通信的插件

flutter_html

^0.11.0

https://pub.dev/packages/flutter_html

加载富文本,用于将静态html标记呈现为Flutter widgets。(将呈现70多个不同的html标记!)

zefyr

^0.8.0

https://pub.dev/packages/zefyr

用于Flutter应用程序的富文本编辑。

flutter_html_view

^0.5.2

https://pub.dev/packages/flutter_html_view

Flutter没有默认的支持来显示html,所以需要三方的包来显示。这个包可以将html呈现给原生的Widget。(目前支持的标签比较少)

flutter_html_textview

^0.2.6

https://pub.dev/packages/flutter_html_textview

将html呈现为一个Widget,在textview中呈现html。

markdown

^2.0.0

https://pub.dev/packages/markdown

用Dart编写的便携式Markdown库。它可以在客户端和服务器上将Markdown解析为HTML。

html2md

^0.3.3

https://pub.dev/packages/html2md

将html转换为Dart中的MarkDown.

flutter_easyrefresh

^2.0.0

https://pub.dev/packages/flutter_easyrefresh

实现下拉刷新以及上拉加载操作,它支持几乎所有的Flutter控件

common_utils

^1.1.3

https://pub.dev/packages/common_utils

Dart常用工具类库。包含日期,正则,倒计时,定时任务,时间轴等工具类

date_format

^1.0.8

https://pub.dev/packages/date_format

一个简单的API,用于格式化日期。

flutter_calendar  (日历)

^0.0.8

https://pub.dev/packages/flutter_calendar

日历组件.

flutter_picker

^1.1.0

https://pub.dev/packages/flutter_picker

选择器。可以根据json或自定义数据生成选择器。

city_picker

^0.1.4

https://pub.dev/packages/city_picker

中国城市选择器

file_picker

^1.3.8

https://pub.dev/packages/file_picker

文件资源管理器,可选择单个或多个文件

badges

^1.1.0

https://pub.dev/packages/badges

徽章

font_awesome_flutter

^0.8.5

https://pub.dev/packages/font_awesome_flutter

图标库

flutter_slidable

^0.5.4

https://pub.dev/packages/flutter_slidable

Flutter实现的可滑动列表项,具有可被取消的定向滑动动作。

dragablegridview_flutter

^0.2.5

https://pub.dev/packages/dragablegridview_flutter

可拖动删除的GridView

flutter_staggered_animations

^0.1.2

https://pub.dev/packages/flutter_staggered_animations

轻松地将交错动画添加到ListView、GridView、Column和Row

azlistview

^0.1.2

https://pub.dev/packages/azlistview

列表索引,Flutter 城市列表,联系人列表,自定义Header,索引,悬停效果.

flutter_spinkit

^4.0.0

https://github.com/jogboms/flutter_spinkit

加载动画。支持多种常用效果,非常酷炫。 

badge

^0.0.3

https://pub.dev/packages/badge

小红点插件,可以用来显示小红点、未读消息数量等,非常方便

flukit

^1.0.2

https://pub.dev/packages/flukit

Flutter UI组件库

flutter_local_notifications

^0.8.4+3

https://pub.dev/packages/flutter_local_notifications

通知栏消息,一个用于显示本地通知的跨平台插件。

cool_ui 

^0.3.1

https://pub.dev/packages/cool_ui

自定义键盘

图像处理

image_picker

^0.6.1

https://pub.dev/packages/image_picker

图片选择器

image

^2.1.9

https://pub.dev/packages/image

DART库,提供以各种不同的文件格式加载、保存和操作图像的能力。该库不依赖于DART:IO,因此它可以用于服务器和Web应用程序。

transparent_image

^1.0.0

https://pub.dev/packages/transparent_image

透明图片控件 Uint8List

cached_network_image

^1.1.3

https://pub.dev/packages/cached_network_image

图片缓存,Flutter库来加载和缓存网络图像。也可以与占位符和错误小部件一起使用。

photo_view

^0.9.0

https://pub.dev/packages/photo_view

图片手势

carousel_slider

^1.3.1

https://pub.dev/packages/carousel_slider

一个支持手势划动和自动播放的图像展示控件。

zoomable_image

^1.3.1
https://pub.dev/packages/zoomable_image

提供图像查看和手势缩放操作功能。

flutter_svg

^0.6.3

https://pub.dev/packages/flutter_svg

加载svg图像。

camera

^0.5.7

https://pub.dev/packages/camera

用于在Android和iOS上获取有关和控制相机的信息。支持预览相机馈送和捕捉图像。

flutter_image_compress

^0.6.3

https://pub.dev/packages/flutter_image_compress

将图像压缩为本机插件(Obj-C / Kotlin)

视频 & 音频

chewie

^0.9.8

https://pub.dev/packages/chewie

视频播放器,在video_player的基础上包装了控制UI。

video_player

^0.10.3+3

https://pub.dev/packages/video_player

用于在Android和iOS上与其他Flutter窗口小部件一起显示内嵌视频。

audioplayer

^0.5.2

https://pub.dev/packages/audioplayer

一个播放远程或本地音频文件Flutter音频插件

audioplayers

^0.13.3

https://pub.dev/packages/audioplayers

这是rxlabz的audioplayer的一个分支,不同之处在于它支持同时播放多个音频并显示音量控制。

spritewidget

0.9.17

https://pub.dev/packages/spritewidget

SpriteWidget是用于构建复杂、高性能动画和带有2D游戏的插件包,可与其它小部件无缝混合。您可以使用SpriteWidget创建任何东西,从动画图标到成熟的游戏。

路由和消息传递

fluro

^1.5.1

https://pub.dev/packages/fluro

https://github.com/theyakka/fluro

最好用的路由导航框架。功能:简单的路线导航;函数处理程序(映射到函数而不是路径);通配符参数匹配;查询字符串参数解析;内置常用转换;简单的定制转换创建。

flutter_local_notifications

^0.8.4+3

https://pub.dev/packages/flutter_local_notifications

一个跨平台的显示本地notifications的插件。

url_launcher

^5.2.5

https://pub.dev/packages/url_launcher

用于在Android和iOS上启动URL。支持网络,电话,短信和电子邮件方案。

firebase_messaging

^6.0.1

https://pub.dev/packages/firebase_messaging

一款跨平台的消息传递解决方案,可让您在Android和iOS上可靠地传递消息。

event_bus

^1.1.0

https://pub.dev/packages/event_bus

一个使用Dart流进行解耦应用程序的简单事件总线的库。

数据存储、缓存有关的库

sqflite

^1.1.7+3

https://pub.dev/packages/sqflite

SQLite的Flutter插件,一个自包含的高可靠性嵌入式SQL数据库引擎。

shared_preferences

^0.5.3+4

https://pub.dev/packages/shared_preferences

sp本地存储

file_cache

^0.1.2

https://pub.dev/packages/file_cache

为flutter package项目缓存Json,Buffer,FileCacheImage。

flutter_cache_manager

^1.1.3

https://pub.dev/packages/flutter_cache_manager

管理你的app下载到本地的文件缓存。它使用缓存控制HTTP报头有效地检索文件。

类型编解码的库

html_unescape

^1.0.1+3

https://pub.dev/packages/html_unescape

用于解决HTML编码字符串的Dart库。支持所有命名字符引用(如 ),小数字符引用(如á)和十六进制字符引用(如ã)。

html

^0.14.0+3

https://pub.dev/packages/html

HTML解析库。

crypto

^2.1.3

https://pub.dev/packages/crypto

在纯DART中实现的加解密函数库。支持SHA-1、SHA-256、MD5、HMAC

设备系统 

path_provider  (获取本地文件)

^1.4.5

https://pub.dev/packages/path_provider

用于获取Android和iOS文件系统上的常用位置,例如temp和app数据目录。

shared_preferences  (读写sp文件)

^0.5.4+6

https://pub.dev/packages/shared_preferences

用于读写简单键值对的Flutter插件。包装iOS上的NSUserDefaults和Android上的SharedPreferences。

connectivity  (网络状态)

^0.4.5+6

https://pub.dev/packages/connectivity

用于发现Android和iOS上的网络状态(WiFi和移动/蜂窝)连接。

device_info  (设备信息)

^0.4.1+2

https://pub.dev/packages/device_info

提供有关设备(品牌,型号等)的详细信息,以及应用程序正在运行的Android或iOS版本。

package_info

^0.4.0+11

https://pub.dev/packages/package_info

包信息

flutter_blue  (蓝牙)

^0.6.3+1

https://pub.dev/packages/flutter_blue

这是跨平台的蓝牙sdk.

share  (分享)

^0.6.3+3

https://pub.dev/packages/share

支持分享的flutter插件

open_file  (打开文件)

^2.1.1

https://pub.dev/packages/open_file

调用平台打开文件。比如直接打开一个apk文件会调起平台的安装向导。

权限库

simple_permissions

0.1.9

https://pub.dev/packages/simple_permissions

用于android和ios的请求权限的库

地图(地图显示、定位、经纬度等)

amap_base 

^0.3.5

https://pub.dev/packages/amap_base

高德地图Flutter插件

map_view

^0.0.14

https://pub.dev/packages/map_view

一个用于在iOS和Android上显示谷歌地图的Flutter插件

flutter_map

^0.7.3

https://pub.dev/packages/flutter_map

基于leaflet的Flutter地图包

location

^2.3.5

https://pub.dev/packages/location

这个插件 处理Android和iOS上的位置。它还提供位置更改时的回调。

latlong

^0.6.1

https://pub.dev/packages/latlong

LatLong是一个计算通用的纬度和经度的轻量级库。

二维码

qr_flutter 

^3.1.0

https://pub.dev/packages/qr_flutter

二维码

barcode_scan

^1.0.0

https://pub.dev/packages/barcode_scan

用于扫描2D条形码和QRCodes的Flutter插件。

qrcode_reader

^0.4.4

https://pub.dev/packages/qrcode_reader

使用相机读取二维码的Flutter插件。

图表库

fl_chart

^0.4.1

https://pub.dev/packages/fl_chart

图表

charts_flutter

^0.8.1

https://pub.dev/packages/charts_flutter

Material Design风格的图表库

charts_common

^0.8.1

https://pub.dev/packages/charts_common

通用的图表库组件

flutter_circular_chart

^0.1.0

https://pub.dev/packages/flutter_circular_chart

一个让你使用flutter轻松创建的动画圆形图控件的库。

工具

rxdart

^0.22.6

https://pub.dev/packages/rxdart

函数式编程,RxDart是基于ReactiveX的Google Dart的反应式功能编程库

rx_widgets

^2.5.0

https://pub.dev/packages/rx_widgets

rx_widgets是一个包含基于流的Flutter Widgets和Widget帮助程序/便利类的程序包,它们有助于反应式编程风格,特别是与RxDart和RxCommands结合使用。

rx_command

^4.3.2+1

https://pub.dev/packages/rx_command

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

provide

^1.0.2

https://pub.dev/packages/provide

状态管理

provider

^3.1.0+1

https://pub.dev/packages/provider

状态管理

intl

^0.16.0

https://pub.dev/packages/intl

这个包提供国际化和本地化功能,包括消息翻译、复数和性别、日期/数字格式和解析以及双向文本。

其它

flutter_app_badger

^1.1.1

https://pub.dev/packages/flutter_app_badger

桌面提示角标

pwa

^0.2.0

https://pub.dev/packages/pwa

基于Dart的PWA应用程序的库

fluwx (微信)

^1.1.3

https://pub.dev/packages/fluwx

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

tobias

^1.2.1

https://pub.dev/packages/tobias

Tobias是一个为支付宝支付SDK做的Flutter插件。

序列化

  • 手动序列化:

使用 dart:convert 的内置解码器。包括传入 JSON 原始字符串给 JSON.decode() 方法,然后从 Map<String, dynamic> 中查询你需要的数据。

  • 自动序列化:

库名版本号链接描述
json_serializable 0.5.7 https://pub.dev/packages/json_serializable  
built_value 5.5.1 https://pub.dev/packages/built_value runtime依赖项
built_value_generator 5.5.1 https://pub.dev/packages/built_value_generator dev依赖项
built_value_test 5.5.1 https://pub.dev/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

学习资料

注:版本号会随时间更新,请自行修改。部分转载于:https://www.cnblogs.com/Free-Thinker/p/10219605.html

原文地址:https://www.cnblogs.com/joe235/p/11939724.html