【Flutter】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
简书 - 闲鱼技术 https://www.jianshu.com/u/cf5c0e4b1111
网络请求
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是一个Dart库,可用于将Dart对象转换为JSON字符串。 https://github.com/eredo/dartson (用于web)
方式 | 大小 (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
这个包提供国际化和本地化功能,包括消息翻译、复数和性别、日期/数字格式和解析以及双向文本。
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,方便快捷。 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空间。
学习资料
https://github.com/AweiLoveAndroid/Flutter-learning
网友阿韦整理的学习资料和demo.
注:版本号会随时间更新,请自行修改。本文集合了 Flutter-learning 中的内容,感谢原作者阿韦(https://github.com/AweiLoveAndroid/Flutter-learning)。转载请注明出处。
【Flutter】Flutter 一些常用库的更多相关文章
- Flutter的需要与原生交互的一些常用库
[说明]由于这些库一直在更新,请自己选择合适的稳定版本下载. 另外如果发现有问题或者你有更好的库,欢迎留言告诉我. 谷歌官方的针对Dart语言的一些实用性的功能以及扩展的库 -- Quiver Qui ...
- Flutter如何引用第三方库并使用
Flutter如何引用第三方库并使用 https://www.jianshu.com/p/bbda7794345e Flutter官网点击访问Flutter教程(一)Flutter概览Flutter教 ...
- 前端Demo常用库文件链接
<!doctype html><html><head> <meta charset="UTF-8"> <title>前端 ...
- 转:不应该不知道C++的常用库
不应该不知道C++的常用库 非常惭愧,我过去也仅仅了解boost.STLport这样的库,以及一些GUI库,但是居然有如此众多的C++库,其实令我惊讶.当然,这个问题应该辩证的看,对于拿来主义确实可以 ...
- 大型项目 Gradle 的常用库和版本管理[转]
http://www.tuicool.com/articles/vqQZBrm 大型项目 Gradle 的常用库和版本管理 时间 2016-03-15 06:44:00 Mystra 原文 htt ...
- iPhone开发 - 常用库
iPhone开发 - 常用库 这里总结了iPhone开发者开发过程中可能需要的一些资源 如何用Facebook graphic api上传视频: http://developers.facebook. ...
- python 常用库整理
python 常用库整理 GUI 图形界面 Tkinter: Tkinter wxPython:wxPython pyGTK:PyGTK pyQt:pyQt WEB框架 django:django w ...
- 爬虫-Python爬虫常用库
一.常用库 1.requests 做请求的时候用到. requests.get("url") 2.selenium 自动化会用到. 3.lxml 4.beautifulsoup 5 ...
- python 库安装方法及常用库
python 库安装方法及常用库 python库安装方法: 方法一:setpu.py 1.下载库压缩包,解压,记录下路径:*:/**/……/ 2.运行cmd,切换到*:/**/……/目录下 3.运行s ...
- python常用库安装网址
python常用库安装网址如下: http://pypi.python.org/pypi
随机推荐
- No.01——配置编程环境
======由于很喜欢Android编程,所以买来了安卓权威指南来学习.为了应用费曼技巧——把知识输出出去以检验和巩固,在此写下学习笔记======= 1. 配置编程环境 Java的JDK(Java ...
- 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(一)-- 起步
本文记录了在Windows环境下安装Visual Studio Code开发工具..Net Core 1.0 SDK和开发一个简单的Web-Demo网站的全过程. 一.安装Visual Studio ...
- 磁盘 -> 硬盘 -> c盘 && 内存
磁盘是计算机的外部存储器,分为两类,一类是硬盘,一类是软盘. (附:计算机的存储器有两类,一类是内部存储器(内存条是用半导体材料做成的),断电不会保存当前工作:一类是外部存储器,断了电也能可以保存.) ...
- adb学习笔记
一.adb实现原理 adb的目的是想仅在PC端执行adb操作来获取手机里面的文件或向手机内部发送文件.这是通过Ubuntu中adb操作作为客户端与Ubuntu中运行的adb service交互,Ubu ...
- Linux内核配置
1.autoconf.h文件 老版本的Linux内核中,执行make menuconfig后,编译系统会把所有的配置信息保存到源码顶层目录下的.config文件中,然后将.config中的内容转换为C ...
- OASGraph 转换rest api graphql 试用
创建rest api lb4 appdemo 参考提示即可 安装 OASGraph git clone https://github.com/strongloop/oasgraph.git cd oa ...
- Oracle 存储过程了解
简要记录存储过程语法与Java程序的调用方式 一 存储过程 首先,我们建立一个简单的表进行存储过程的测试 createtable xuesheng(id integer, xing_ming varc ...
- RabbitMQ负载均衡方案之LVS
负载均衡的方案有很多,适合RabbitMQ使用的处理HAProxy之外还有LVS.LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件 ...
- es 中的 Set 和 Map
Set 函数可以接受一个数组(或者具有 iterable 接口的其他数据结构)作为参数,用来初始化.
- [boost] : asser库用法
基本用法 需要包含头文件#include <boost/assert.hpp> assert库定义了两个断言宏 BOOST_ASSERT BOOSE_ASSERT_MSG 第一种形式等价于 ...