Flutter常用的库
1.网络请求
库名 | 描述 |
---|---|
http | 包含一组高级函数和类,可以轻松使用HTTP资源。它与平台无关,可以在命令行和浏览器上使用。 |
dio | Dart的一个强大的Http客户端,支持拦截器、全局配置、FormData、请求取消、文件下载、超时等。 |
http_multi_server | dart:io HttpServer包装器,用于处理来自多个服务器的请求 |
2.类型解码
库名 | 描述 |
---|---|
html_unescape | 用于解决HTML编码字符串的Dart库。 |
gbk2utf8 | 官方的http还不能支持中文gbk的解析,这个项目就是为了解决gbk转成utf-8编码的。 |
3.JSON序列化
库名 | 描述 |
---|---|
json_serializable | 字典转模型,需要运行脚本。 |
json_to_dart | 根据json生成具有Dart实体类,自动生成字典和json相互转换的方法。 |
4.编解码、加密解密有关的库
库名 | 描述 |
---|---|
ninja | 在Dart的Converter和Codec接口上完善的AES以及RSA加密解密算法的库。 |
archive | 为各种存档和压缩格式提供编码器和解码器,如zip,tar,bzip2,gzip和zlib。(不知道移动端能否用得到,文档说服务端和web端可以用。 |
5.系统平台有关的库
库名 | 用途 | 描述 |
---|---|---|
share | 分享 | 用于通过平台共享UI共享内容,使用Android上的ACTION_SEND意图和iOS上的UIActivityViewController。 |
path_provider | 获取文件路径 | 用于获取Android和iOS文件系统上的常用位置,例如temp和app数据目录。 |
shared_preferences | 数据存储 | 用于读写简单键值对的Flutter插件。包装iOS上的NSUserDefaults和Android上的SharedPreferences。 |
connectivity | 网络状态 | 用于发现Android和iOS上的网络状态(WiFi和移动/蜂窝)连接。 |
device_info | 设备信息 | 提供有关设备(品牌,型号等)的详细信息,以及应用程序正在运行的Android或iOS版本。 |
flutter_blue | 蓝牙 | 跨平台的蓝牙sdk. |
flutter_ble_lib | 蓝牙 | 一个支持蓝牙连接的flutter库。它里面使用RxAndroidBle和RxBluetoothKit作为本地库。 |
6.国际化
库名 | 描述 |
---|---|
intl | 提供国际化和本地化功能,包括消息翻译、复数和性别、日期/数字格式和解析以及双向文本。 |
7.图片加载缓存
库名 | 描述 |
---|---|
cached_network_image | Flutter库来加载和缓存网络图像。也可以与占位符和错误小部件一起使用。 |
8.数据存储,缓存
库名 | 描述 |
---|---|
sqflite | SQLite的Flutter插件,一个自包含的高可靠性嵌入式SQL数据库引擎。 |
file_cache | 为flutter package项目缓存Json,Buffer,FileCacheImage。 |
9.UI库
库名 | 描述 |
---|---|
image_picker | 用于从Android和iOS图像库中选择图像,并使用相机拍摄新照片。 |
camera | 用于在Android和iOS上获取有关和控制相机的信息。支持预览相机馈送和捕捉图像。 |
fluttertoast | 用于Android和ios的toast库。 |
font_awesome_flutter | 图标字体的一个库 |
flutter_multiple_image_picker | 一个新的Flutter插件,用于从图库中选择多个图像 |
contact_picker | 使用此插件,Flutter应用程序可以地址簿中选择联系人,并将联系人信息返回给应用程序,并且不需要用户的任何特殊权限。目前该插件仅支持选择电话号码。 |
10.转场动画
库名 | 描述 |
---|---|
flutter_villains | 页面切换动画的一个库,简化动画操作,你只需要管理好UI就可以了。 |
11.适配
库名 | 描述 |
---|---|
platform_aware | 为自动适应当前平台而包装的Flutter组件,不需要对iOS和Android进行代码更改。所有小部件都依赖于Theme.of(context).platform来确定当前活动平台的平台。你可以使用Flutter Inspector动态地更改平台。 |
native_widgets | 为避免重复代码,只编写一次代码就可以支持两个平台并自动根据平台自动使用对应风格组件,Android将使用材料设计,iOS将使用Cupertino风格的小部件。 |
12.日历库(主要是用于显示和操作日历)
库名 | 描述 |
---|---|
flutter_calendar | 适用于Flutter的日历小组件 |
calendarro | Flutter的日历组件库。 这个库提供了多种自定义组件的方法。 |
flutter_picker | 一个日期,时间,日期时间,icon,自定义数据的选择器,可以居中弹窗,也可以在底部弹出。(目前来看是最全面的一个选择器控件。该插件支持ios和android平台,使用的是ios的风格的UI效果。) |
13.轮播图有关的库
库名 | 描述 |
---|---|
flutter_swiper | Flutter最强大的siwiper, 多种布局方式,无限轮播,Android和IOS双端适配. |
infinity_page_view | Flutter无限页面视图。 |
page_transformer | 一个简单的轮播组件(待完善)。 |
carousel | 用于在Flutter中创建漂亮的PageView视差效果的示例项目 |
14.导航栏有关的库(库)
库名 | 描述 |
---|---|
navigation_bar | 一个简易的底部导航栏。 |
15.列表有关的库
库名 | 描述 |
---|---|
flutter_pagewise | 一次加载一页(或批处理)内容(也称为延迟加载 |
lazy_load_scrollview | ScrollView的包装器,可以启用延迟加载,当到达页面底部时将触发回调。 |
16.路由
库名 | 描述 |
---|---|
fluro | 最好用的路由导航框架。功能:简单的路线导航;函数处理程序(映射到函数而不是路径);通配符参数匹配;查询字符串参数解析;内置常用转换;简单的定制转换创建。 |
lazy_load_scrollview | ScrollView的包装器,可以启用延迟加载,当到达页面底部时将触发回调。 |
17.消息传递通信
库名 | 描述 |
---|---|
flutter_local_notifications | 一个跨平台的显示本地notifications的插件。 |
local_notifications | 这个库能让你在Android和iOS上创建Notifications很简单。 |
url_launcher | 用于在Android和iOS上启动URL。支持网络,电话,短信和电子邮件方案。 |
firebase_messaging | 一款跨平台的消息传递解决方案,可让您在Android和iOS上可靠地传递消息。 |
event_bus | 一个使用Dart流进行解耦应用程序的简单事件总线的库。 |
18.视频 & 音频:
库名 | 描述 |
---|---|
video_player | 用于在Android和iOS上与其他Flutter窗口小部件一起显示内嵌视频。 |
video_launcher | 视频播放器 |
flute_music_player | 基于Flutter的材料设计音乐播放器与音频插件播放本地音乐文件. |
audioplayer | 一个播放远程或本地音频文件Flutter音频插件 |
audioplayers | 这是rxlabz的audioplayer的一个分支,不同之处在于它支持同时播放多个音频并显示音量控制 |
19.rx系列
库名 | 描述 |
---|---|
rxdart | RxDart是一种基于ReactiveX的谷歌Dart反应性函数编程库。谷歌Dart自带了一个非常不错的流API;RxDart没有尝试提供这个API的替代方案,而是在它上面添加了一些功能 |
rx_widgets | rx_widgets是一个包含基于流的Flutter Widgets和Widget帮助程序/便利类的程序包,它们有助于反应式编程风格,特别是与RxDart和RxCommands结合使用。 |
rx_command | RxCommand是针对事件处理程序的基于Reactive Extensions(Rx)的抽象。它基于ReactiveUI框架的ReactiveCommand。它大量使用了RxDart包。 |
20.二维码
库名 | 描述 |
---|---|
qr_flutter | QR.Flutter是一个Flutter库,可通过Widget或自定义Paint进行简单快速的QR码渲染。 |
barcode_scan | 用于扫描2D条形码和QRCodes的Flutter插件。 |
qrcode_reader | 使用相机读取二维码的Flutter插件。 |
21.WebView
库名 | 描述 |
---|---|
flutter_webview_plugin | 允许Flutter与原生Webview进行通信的插件 |
webview_flutter | 官方插件。 |
22.图表库
库名 | 描述 |
---|---|
charts-common | Material Design风格的图表库 |
charts-flutter | 通用的图表库组件 |
flutter_circular_chart | 一个让你使用flutter轻松创建的动画圆形图控件的库。 |
23.权限库
库名 | 描述 |
---|---|
simple_permissions | 用于android和ios的请求权限的库 |
flutter_simple_permissions | 权限申请的库 |
24.其他
库名 | 描述 |
---|---|
flutter_umeng_analytics | 这个库集成了友盟统计sdk |
flutter_qq | 这个库集成了QQ登录、QQ分享、QQ空间分享。 |
flutter_wechat | 这个库集成了微信,支持微信登录、分享、支付。 |
flutter_alipay | 这个库继承了支付宝,兼容android和ios |