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/

网络请求

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_serializable0.5.7https://pub.dartlang.org/packages/json_serializable

built_value5.5.1https://pub.dartlang.org/packages/built_valueruntime依赖项built_value_generator5.5.1https://pub.dartlang.org/packages/built_value_generatordev依赖项built_value_test5.5.1https://pub.dartlang.org/packages/built_value_testtest依赖项

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)

几个Json库的比较:https://github.com/drails-dart/dart-serialise

方式大小 (js)序列化 (dart)反序列化 (dart)序列化 (js)反序列化 (js)json_serializable80 KB9.09 ms6.61 ms8.23 ms8.12 msSerializable79 KB6.1 ms6.92 ms4.37 ms

DSON94 KB12.72 ms11.15 ms16.64 ms17.94 msDartson86 KB9.61 ms6.81 ms8.58 ms7.01 msManual86 KB8.29 ms5.78 ms10.7 ms7.9 msInterop70 KB61.55 ms14.96 ms2.49 ms2.93 msJaguar_serializer88 KB8.57 ms6.58 ms10.31 ms8.59 msJackson (Groovy)

496 ms252 msn/an/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)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


这篇文章主要讲解了“FlutterComponent动画的显和隐怎么实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究...
这篇文章主要讲解了“flutter微信聊天输入框功能如何实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“f...
本篇内容介绍了“Flutter之Navigator的高级用法有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处...
这篇文章主要介绍“Flutter怎么使用Android原生播放器”,在日常操作中,相信很多人在Flutter怎么使用Android原生播放器问题上存在疑惑,小编查阅了各式资料,整...
Flutter开发的android端如何修改APP名称,logo,版本号,具体的操作步骤:修改APP名称找到文件:android\\app\\src\\main\\AndroidManifest.xml
Flutter路由管理初识路由概念一.路由管理1.1.Route1.2.MaterialPageRoute1.3.Navigator1.4.路由传值1.5 命名路由1.6.命名路由参数传递1.7.适配二、路由钩子三、onUnknownRoute四、结尾初识路由概念路由的概念由来已久,包括网络路由、后端路由,到现在广为流行的前端路由。无论路由的概念如何应用,它的核心是一个路由映射表。比如:名字 detail 映射到 DetailPage 页面等。有了这个映射表之后,我们就可以方便的根据名字来完成路由的转发
前提:针对Android开发者(windows系统下),已安装Git,AndroidStudio(建议4.0+版本)一.下载Flutter SDK地址:https://flutter.dev/docs/development/tools/sdk/releases,在 Stable channel (Windows)里面下最新版本即可。Flutter的渠道版本会不停变动,请以Flutter官网为准。在中国,要想正常获取安装包列表或下载安装包,可能需要翻墙,也可以去Flutter github项目下去下载安
一、变量变量是一个引用,根据Dart中“万物皆对象”原则,即变量存储的都是对象的引用,或者说它们都是指向对象。1.1.声明变量://1.不指定类型var name = 'aaa';//2.明确指定类型String name = 'aaa';因为有类型推导,所以两种实现效果一样,官方推荐在函数内的本地变量尽量使用var声明。在变量类型并不明确的情况下,可以使用dynamic关键字//3.使用dynamic关键字dynamic name = 'aaa';1.2.默认值未初始化的变量
前言Flutter2.0发布不久,对web的支持刚刚进入stable阶段。初学几天,构建web应用时候碰到一些问题,比如中文显示成乱码,然后加载图片出现图片跨域问题:Failed to load network image...Trying to load an image from another domain?1.开启web端构建:使用下面这个命令才可以开启Web端构建的支持flutter config --enable-web提示我们:重新启动编辑器,以便它们读取新设置。2.重
一.Flutter打Android release包的步骤:1.为项目创建一个.jks签名文件(很简单,跳过)2.创建一个文件key.properties,直接复制下面key.properties位置如图:在里面输入一下内容:storePassword=iflytekkeyPassword=iflytekkeyAlias=teachingmachinestoreFile=E:/teacher/app/keys/TeachingMachine.jks输入你自己的passwork以及
1 问题Android原生向js发消息,并且可以携带数据2 实现原理Android原生可以使用RCTEventEmitter来注册事件,然后这里需要指定事件的名字,然后在js那端进行监听同样事件的名字监听,就可以收到消息得到数据Android注册关键代码reactContext.getJSModule(DeviceEventManagerModule.RCT...
1 Flexbox布局1) flexDirection 可以决定布局的主轴,子元素是应该沿着水平轴(row)方向排列,还是沿着竖直轴(column)方向排列2) justifyContent 决定其子元素沿着次轴(与主轴垂直的轴,比如若主轴方向为row,则次轴方向为column)的排列方式 有flex-start、center、flex-end、space-around...
1 实现的功能在网上看React Native文档,我特码就想实现一个页面到另外一个页面的跳转,然后另外一个页面怎么获取参数,特么没找到一个说清楚的,要么太复杂,要么说了不理解,下面是我自己写的一个App.js文件,实现一个Home页面跳到另外Details页面,并且携带了参数怎么在Details页面获取,就是这么简单粗暴.2 测试DemoApp.js文件如下...
1 问题在一个文件构建一个对象,然后在另外一个文件里面new这个对象,通过构造方法传递参数,然后再获取这个参数2 测试代码Student.js文件如下'use strict';import React from 'react'import {NativeModules, NativeEventEmitter, DeviceEventEmitter,Ale...
1 简单部分代码export default class App extends Component&amp;lt;Props&amp;gt; { render() { return ( &amp;lt;View {styles.container}&amp;gt; &amp;lt;View {styles.welcome}&amp;gt; &amp;l...
1 怎么实现发送和接收事件理论上封装了Android原生广播的代码,需要注册和反注册,这里用DeviceEventEmitter实现//增加监听DeviceEventEmitter.addListener//取消监听//this.emitter.remove();这里可也可以通过安卓原生向页面js发送消息,可以参考我的这篇博客React Native之Android原生通过Dev...
1、Component介绍一般Component需要被其它类进行继承,Component和Android一样,也有生命周期英文图片如下2 具体说明1)、挂载阶段constructor()//构造函数,声明之前先调用super(props)componentWillMount()//因为它发生在render()方法前,因此在该方法内同步设置状态...
1 触摸事件普通点击我们可以使用onPress方法,我们可以使用Touchable 系列控件设计我们的按钮TouchableHighlight 背景会在用户手指按下时变暗TouchableNativeFeedback用户手指按下时形成类似墨水涟漪的视觉效果TouchableOpacity指按下时降低按钮的透明度,而不会改变背景的颜色TouchableWithoutFeedbac...
1 问题部分代码如下class HomeScreen extends React.Component { render() { return ( &amp;lt;View {{ flex: 1, alignItems: 'center', justifyContent: 'center' }}&amp;gt; &amp;lt;Text&amp;gt;Home Scre...
1 Props(属性)和State(状态)和简单样式简单使用App.js代码如下/** * Sample React Native App * https://github.com/facebook/react-native * * @format * @flow */import React, {Component} from 'react';import {Pla...