1
1
# Flutter的需要与原生交互的一些常用库
2
2
3
- 【说明】由于这些库一直在更新,请自己选择合适的稳定版本下载。
3
+ ** 【说明】由于这些库一直在更新,请自己选择合适的稳定版本下载。**
4
+ ** 另外如果发现有问题或者你有更好的库,欢迎留言告诉我。**
4
5
5
6
6
7
----
@@ -82,9 +83,15 @@ built_value_test|5.5.1|https://pub.dartlang.org/packages/built_value_test|test
82
83
83
84
> json解析
84
85
86
+ 库名|版本号|链接|描述
87
+ -|-|-|-
88
+ codable |1.0.0-beta.2|https://pub.dartlang.org/packages/codable|用于将动态结构化数据(JSON,YAML)转换为Dart类型的库。
89
+
85
90
* https://github.com/javiercbk/json_to_dart 根据json生成Dart实体类
86
91
* https://github.com/debuggerx01/JSONFormat4Flutter 这是一个AS的辅助插件,将JSONObject格式的String解析成Dart的实体类
87
92
93
+
94
+
88
95
* Dson 0.13.2 下载地址 https://pub.dartlang.org/packages/dson
89
96
描述:Dson的github地址 https://github.com/drails-dart/dson
90
97
DSON是一个将Dart对象转换为JSON的库。(用于web)这个库是Dartson的一个分支,但又有不同。
@@ -105,6 +112,32 @@ https://github.com/eredo/dartson (用于web)
105
112
|Jackson (Groovy) || 496 ms| 252 ms |n/a| n/a|
106
113
107
114
115
+ ----
116
+
117
+ **编解码、加密解密有关的库**
118
+ ninja |1.0.0|https://pub.dartlang.org/packages/ninja|D在art的Converter和Codec接口上完善的AES以及RSA加密解密算法的库。
119
+ archive |2.0.0|https://pub.dartlang.org/packages/archive|为各种存档和压缩格式提供编码器和解码器,如zip,tar,bzip2,gzip和zlib。(不知道移动端能否用得到,文档说服务端和web端可以用。)
120
+
121
+
122
+ ----
123
+
124
+ > 系统平台有关的库:
125
+
126
+ 库名|版本号|链接|描述
127
+ -|-|-|-
128
+ **分享(官方的库)**|||
129
+ share |0.5.2|https://pub.dartlang.org/packages/share|用于通过平台共享UI共享内容,使用Android上的ACTION_SEND意图和iOS上的UIActivityViewController。
130
+ **获取本地文件**|||
131
+ path_provider|0.4.1|https://pub.dartlang.org/packages/path_provider|用于获取Android和iOS文件系统上的常用位置,例如temp和app数据目录。
132
+ **读写sp文件**|||
133
+ shared_preferences|0.4.2|https://pub.dartlang.org/packages/shared_preferences|用于读写简单键值对的Flutter插件。包装iOS上的NSUserDefaults和Android上的SharedPreferences。
134
+ **网络状态有关**|||
135
+ connectivity|0.3.1|https://pub.dartlang.org/packages/connectivity|用于发现Android和iOS上的网络状态(WiFi和移动/蜂窝)连接。
136
+ **设备信息**|||
137
+ device_info|0.2.1|https://pub.dartlang.org/packages/device_info|提供有关设备(品牌,型号等)的详细信息,以及应用程序正在运行的Android或iOS版本。
138
+ **蓝牙**|||
139
+ flutter_blue|0.3.3|https://pub.dartlang.org/packages/flutter_blue|这是跨平台的蓝牙sdk.
140
+ flutter_ble_lib|1.0.0|https://pub.dartlang.org/packages/flutter_ble_lib|这是一个支持蓝牙连接的flutter库。它里面使用RxAndroidBle和RxBluetoothKit作为本地库。
108
141
109
142
----
110
143
@@ -116,7 +149,7 @@ intl|0.15.6|https://pub.dartlang.org/packages/intl|这个包提供国际化和
116
149
117
150
----
118
151
119
- > 图片加载
152
+ > 图片加载和缓存
120
153
121
154
使用`Image.network`,或者使用下面这个库:
122
155
@@ -145,31 +178,44 @@ font_awesome_flutter|7.0.0|https://pub.dartlang.org/packages/font_awesome_flutte
145
178
fluttertoast|2.0.3|https://pub.dartlang.org/packages/fluttertoast|用于Android和ios的toast库。
146
179
image_picker|0.4.5|https://pub.dartlang.org/packages/image_picker|用于从Android和iOS图像库中选择图像,并使用相机拍摄新照片。
147
180
camera|0.2.1|https://pub.dartlang.org/packages/camera|用于在Android和iOS上获取有关和控制相机的信息。支持预览相机馈送和捕捉图像。
181
+
148
182
**富文本 ↓**|||
149
183
flutter_html_view|0.5.2|https://pub.dartlang.org/packages/flutter_html_view|Flutter没有默认的支持来显示html,所以需要三方的包来显示。这个包可以将html呈现给原生的Widget。(目前支持的标签比较少)
150
184
flutter_html_textview|0.2.6|https://pub.dartlang.org/packages/flutter_html_textview|将html呈现为一个Widget,在textview中呈现html。
151
185
**MarkDown ↓**|||
152
186
markdown|2.0.0|https://pub.dartlang.org/packages/markdown|用Dart编写的便携式Markdown库。它可以在客户端和服务器上将Markdown解析为HTML。
153
187
html2md|0.1.7|https://pub.dartlang.org/packages/html2md|将html转换为Dart中的MarkDown.
188
+
154
189
**动画 ↓**|||
155
190
flutter_villains|1.0.1|https://pub.dartlang.org/packages/flutter_villains|页面切换动画的一个库,简化动画操作,你只需要管理好UI就可以了。
156
191
**针对Android和ios平台的UI适配库 ↓**|||
157
192
platform_aware|0.4.0|https://pub.dartlang.org/packages/platform_aware|为自动适应当前平台而包装的Flutter组件,不需要对iOS和Android进行代码更改。所有小部件都依赖于Theme.of(context).platform来确定当前活动平台的平台。你可以使用Flutter Inspector动态地更改平台。
158
193
native_widgets |0.0.3| https://pub.dartlang.org/packages/native_widgets|为避免重复代码,只编写一次代码就可以支持两个平台并自动根据平台自动使用对应风格组件,Android将使用材料设计,iOS将使用Cupertino风格的小部件。
194
+
159
195
**日期,时间,日期时间,icon,自定义数据的选择器(很全面) ↓**|||
160
196
flutter_picker |0.0.3 |https://pub.dartlang.org/packages/flutter_picker |一个日期,时间,日期时间,icon,自定义数据的选择器,可以居中弹窗,也可以在底部弹出。(目前来看是最全面的一个选择器控件。该插件支持ios和android平台,使用的是ios的风格的UI效果。)
197
+
161
198
**图片选择的库 ↓**|||
162
199
image_picker |0.4.5 | https://pub.dartlang.org/packages/image_picker |适用于iOS和Android的Flutter插件,用于从图像库中拾取图像,并使用相机拍摄新照片。(功能正在完善中)
163
200
flutter_multiple_image_picker |0.0.1 | https://pub.dartlang.org/packages/flutter_multiple_image_picker|一个新的Flutter插件,用于从图库中选择多个图像。
201
+
164
202
**联系人选择的库 ↓**|||
165
203
contact_picker |0.0.2| https://pub.dartlang.org/packages/contact_picker|使用此插件,Flutter应用程序可以地址簿中选择联系人,并将联系人信息返回给应用程序,并且不需要用户的任何特殊权限。目前该插件仅支持选择电话号码。
204
+
166
205
**颜色选择的库 ↓**|||
167
206
flutter_color_picker |0.0.1 | https://pub.dartlang.org/packages/flutter_color_picker| 一个简单的颜色选择器,类似于安卓的selector的功能,可以在点击控件时,给控件设置选择器效果。
168
207
material_color_picker| 0.0.1| https://pub.dartlang.org/packages/material_color_picker(这个是旧版本)|这个是Flutter的颜色选择器,基于Google Docs颜色选择器。这个用于选择颜色,你想用哪一个颜色,可以弹窗自由选择。
169
208
material_pickers| 0.0.2| https://pub.dartlang.org/packages/material_pickers(这个是新版本)|这个是Flutter的颜色选择器,基于Google Docs颜色选择器。这个用于选择颜色,你想用哪一个颜色,可以弹窗自由选择。
170
209
flutter_colorpicker| 0.0.5| https://pub.dartlang.org/packages/flutter_colorpicker|这是一个HSV的颜色选择器
171
210
211
+ **轮播图有关的库(以及Tab PagerView有关的库) ↓**|||
212
+ infinity_page_view |1.0.0|https://pub.dartlang.org/packages/infinity_page_view|Flutter无限页面视图。
213
+ carousel|0.1.0|https://pub.dartlang.org/packages/carousel|一个简单的轮播组件(待完善)。
214
+ page_transformer |0.0.1|https://pub.dartlang.org/packages/page_transformer|用于在Flutter中创建漂亮的PageView视差效果的示例项目。
172
215
216
+ **列表有关的库 ↓**|||
217
+ flutter_pagewise |0.2.0|https://pub.dartlang.org/packages/flutter_pagewise|一次加载一页(或批处理)内容(也称为延迟加载)
218
+ lazy_load_scrollview |0.0.2|https://pub.dartlang.org/packages/lazy_load_scrollview|ScrollView的包装器,可以启用延迟加载,当到达页面底部时将触发回调。
173
219
174
220
----
175
221
@@ -216,24 +262,6 @@ rx_widgets|1.0.3|https://pub.dartlang.org/packages/rx_widgets|rx_widgets是一
216
262
rx_command|2.0.0|https://pub.dartlang.org/packages/rx_command|RxCommand是针对事件处理程序的基于Reactive Extensions(Rx)的抽象。它基于ReactiveUI框架的ReactiveCommand。它大量使用了RxDart包。
217
263
218
264
219
- ----
220
-
221
- > 系统平台有关的库:
222
-
223
- 库名|版本号|链接|描述
224
- -|-|-|-
225
- **获取本地文件**|||
226
- path_provider|0.4.1|https://pub.dartlang.org/packages/path_provider|用于获取Android和iOS文件系统上的常用位置,例如temp和app数据目录。
227
- **读写sp文件**|||
228
- shared_preferences|0.4.2|https://pub.dartlang.org/packages/shared_preferences|用于读写简单键值对的Flutter插件。包装iOS上的NSUserDefaults和Android上的SharedPreferences。
229
- **网络状态有关**|||
230
- connectivity|0.3.1|https://pub.dartlang.org/packages/connectivity|用于发现Android和iOS上的网络状态(WiFi和移动/蜂窝)连接。
231
- **设备信息**|||
232
- device_info|0.2.1|https://pub.dartlang.org/packages/device_info|提供有关设备(品牌,型号等)的详细信息,以及应用程序正在运行的Android或iOS版本。
233
- **蓝牙**|||
234
- flutter_blue|0.3.3|https://pub.dartlang.org/packages/flutter_blue|这是跨平台的蓝牙sdk.
235
- flutter_ble_lib|1.0.0|https://pub.dartlang.org/packages/flutter_ble_lib|这是一个支持蓝牙连接的flutter库。它里面使用RxAndroidBle和RxBluetoothKit作为本地库。
236
-
237
265
----
238
266
239
267
## 三方sdk有关的:
@@ -322,15 +350,18 @@ flutter_wechat|0.1.2|https://pub.dartlang.org/packages/flutter_wechat|这个库
322
350
flutter_alipay|0.1.0|https://pub.dartlang.org/packages/flutter_alipay|这个库继承了支付宝,兼容android和ios
323
351
324
352
353
+
354
+
355
+ * 视频播放(本地视频、网上视频、或者rtmp源格式)
356
+
357
+ https://github.com/hyz1992/my_aliplayer 集成了阿里云播放器,可以用来播放视频,也可以播放rtmp格式。
358
+
325
359
----
326
360
327
361
**以下几个暂未找到相关的三方库**
328
362
329
-
330
- * 语音
331
363
* 推送
332
364
333
- **另外加密解密有关的库也是需要去花点时间找找。。**
334
365
335
366
----
336
367
0 commit comments