首页/文章/flutter

Flutter 必备开源项目推荐

2023-07-28
302411 分钟
...
  • 这段时间内一直学习Flutter, 自行设计完成了一个实战项目mahua_pet
  • 项目中用到了flutter中的大部分的组件, 界面也涉及了很多功能(可能很多地方还有待完善)
  • 项目目前也还是处在开发待完成阶段, 主要内容差不多已经完成
  • 下面是一些UI界面展示, 后面推见一些比较好的开源项目
  • 验证码登录和密码登录都可以登录, 账号: 123 密码: 123
  • GitHub项目地址 , 个人博客地址

项目版本信息

项目下载完成之后, 请先执行flutter pub get命令

2020-04-10

  • 项目代码和相关插件已经更新
  • Flutter 2.0.0 • channel stable
  • Engine • revision 40441def69
  • Tools • Dart 2.12.0

部分界面展示

首页

动态的展示导航栏的显示和隐藏

日历模块

展示日历的记录, 每日记录生成图片和保存图片

发现

类似朋友圈的内容展示, 图片浏览和保存图片

动态详情模块, 动态的评论和删除评论

多语言国际化

部分页面适配了韩语和英语

颜色主题和暗黑模式

部分页面支持手动的修改项目主题色, 黑色主题(暗黑模式)适配

用到的插件

dio

pub.dartlang.org/packages/di…

Dart社区提供的http请求库,不仅支持常见的网络请求,还支持Restful API、FormData、拦截器、请求取消、Cookie管理、文件上传/下载、超时等操作

provider

pub.dev/packages/pr…

Flutter官方推荐的状态管理插件, 简单的应用状态管理

flutter_redux

pub.dev/packages/fl…

flutter版的redux

pull_to_refresh

pub.dev/packages/pu…

一个提供上拉加载和下拉刷新的组件,同时支持Androidios

flutter_staggered_grid_view

pub.dev/packages/fl…

一个支持瀑布流布局, 支持交错和可扩展的网格布局的组件

flutter_easyloading

pub.dev/packages/fl…

支持多种样式的toast提示组件, 支持自定义

pub.dev/packages/ca…

轮播图组件, 支持缩放切换

table_calendar

pub.dev/packages/ta…

日历组件, 可定制性比较高, 支持语言国际化

photo_view

pub.dev/packages/ph…

可定制的图片查看器, 支持手势缩放, 动画展示等

shimmer

pub.dev/packages/sh…

提供闪光效果的组件, 表述不清晰, 看提供效果图

image image

cached_network_image

pub.dev/packages/ca…

用来加载和缓存网络图像

image_picker

pub.dev/packages/im…

用于从Android和iOS图像库中选择图像的库,支持使用相机拍摄新照片。

pub.dev/packages/im…

保存视频和图片到手机相册

video_player

pub.dev/packages/vi…

flutter官方推荐的视频播放组件

permission_handler

pub.dev/packages/pe…

用于Android和iOS的相关隐私权限判断

shared_preferences

pub.dev/packages/sh…

用于基本数据的缓存处理

device_info

pub.dev/packages/de…

用于获取用户设备信息

location

pub.dev/packages/lo…

获取定位信息, 可以获取位置更改时的回调

值得推荐的插件

适配相关

native_widgets

pub.dev/packages/na…

支持自动根据平台自动使用对应风格组件,Android将使用Material风格,iOS将使用Cupertino风格

日期时间

flutter_picker

pub.dev/packages/fl…

一个日期,时间,日期时间,icon,自定义数据的选择器,可以居中弹窗,也可以在底部弹出

MarkDown

markdown

pub.dev/packages/ma…

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

颜色选择

flutter_colorpicker

pub.dev/packages/fl…

一个HSV(HSB)/HSL颜色选择器

加密算法

crypto

pub.dev/packages/cr…

crypto算法库支持的算法:

  • SHA-1
  • SHA-224
  • SHA-256
  • SHA-384
  • SHA-512
  • MD5
  • HMAC (i.e. HMAC-MD5, HMAC-SHA1, HMAC-SHA256)

pointycastle

pub.dev/packages/po…

用于加密和解密的Dart库, 实现了AES RSA 公私钥加解密等加密算法

解压缩

archive

pub.dev/packages/ar…

为各种存档和压缩格式提供编码器和解码器,如zip,tar,bzip2,gzip和zlib

数据库

sqflite

pub.dev/packages/sq…

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

分享统计支付

share

pub.dev/packages/sh…

支持分享的flutter插件

flutter_umeng_analytics

pub.dev/packages/fl…

友盟的分享和统计库

flutter_qq

pub.dev/packages/fl…

集成了QQ登录、QQ分享、QQ空间分享等功能的库

flutter_wechat

pub.dev/packages/fl…

集成了微信,支持微信登录、分享、支付等功能的库

flutter_alipay

pub.dev/packages/fl…

支付宝支付的功能

学习资料和项目

推荐一些不错的学习网站和项目学习

awesome-flutter-cn

github.com/crazycodebo…

一个Flutter的学习资料库, 里面提供了很多的学习资料

flutter-go

github.com/alibaba/flu…

由阿里巴巴前端技术团队开发的Flutter 开发者帮助 APP,包含 flutter 常用 140+ 组件的demo 演示与中文文档

Widget整理

laomengit.com/flutter/wid…

整理的330+组件的详细用法,不仅包含UI组件,还包含了功能性的组件

Morec

github.com/Mayandev/mo…

一个非常精美的 Flutter 版电影客户端,利用豆瓣现有的 Api,打造了一个完整的电影展示 App

flutter_hrlweibo

github.com/huangruiLea…

仿微博最新版本,还原微博80%的界面,总共涉及到了几十个界面和接口,用到了flutter中的大部分组件

flutter-netease-music

github.com/boyan01/flu…

仿网易云音乐,完成大部分功能的APP

flutter_shuqi

github.com/huanxsd/flu…

一个用Flutter写的书旗小说客户端, 所有功能都是用Dart写的,iOS和Android的代码复用率达到了100%

gsy_github_app_flutter

github.com/CarGuo/GSYG…

一款跨平台的开源Github客户端App,项目涉及各种常用控件、网络、数据库、设计模式、主题切换、多语言、Redux等

如果您觉得这篇文章有帮助,请点个赞吧~

分享文章

相关文章

更多文章 →
flutter2026-07-01
Dart 入门回顾
1\. Dart 是什么 Dart 是一门类型安全、支持面向对象、支持异步编程的语言。它的语法和 JavaScript、TypeScript、Java、C# 都有一些相似之处。 Dart 常见使用场景: Flutter 跨平台应用开发 命令行工具 Web 应用 服务端接口或脚本 作为学习现代类型语言的入口 Dart 的几个核心特点: 静态类型:变量、函数返回值、参数都有类型。 类型推断:很多时候可以用 ,让 Dart 自动推断类型。 空...
学习
flutter2026-07-01
Flutter 常用 Widget 入门
Flutter 的核心思想是:一切皆 Widget。文字、图片、按钮、页面结构、布局、间距、滚动、动画、手势,几乎都由 Widget 组合出来。 1\. Widget 先分成几类理解 | 类别 | 常用 Widget | 解决什么问题 | | | | | | 应用入口 | 、 | 搭建应用外壳、主题、路由 | | 页面骨架 | 、 、 | 标准页面结构 | | 基础显示 | 、 、 | 显示文字、图标、图片 | | 布局容器 | 、 、...
学习
flutter2024-11-21
在 Flutter 中使用 webview_flutter 4.0
1. 2. ,已入选 3. 4. 本文是第 4 篇,定位是新手入门,介绍和演示 webview 的基础用法。最后还介绍了事件处理的技巧。因为是补写的,所以本来应该首发的却发在最后了。 环境准备已经在 说过了,不再赘述。既然是新手入门,就会本着详尽的原则,而且会多配示例。 获取页面信息 获取页面 title 核心方法:controller.getTitle 完整示例,放在 main.dart 就能运行。运行示例,点击获取 title 的按...
学习
flutter2024-11-06
flutter android端运行报错Namespace not specified. Specify a namespace in the module‘s build file
在使用flutterSDK 3.24之后发现新建项目,项目默认都是基于AGP8了,由于 AGP 开始强制要求 namespace 配置,不仅仅是主工程,也包括第三方库都强制要求 namespace 。但是我们在引入第三方库的时候会发现部分库没能及时的去做相关配置,这也就导致了我们会出现标题错误: 出现这个问题,我们可能会通过去找到本地缓存的第三方库代码去修改它的build.gradle和AndroidManifest.xml来解决缺失...
学习
flutter2024-11-03
Flutter中如何实现APP升级功能背景
背景 每个App应用中一定会包含的功能 ,App的运行平台不同实现升级功能的方式也就不同,基本分类如下所示。本文主要聚焦在使用Flutter框架开发的应用在安卓系统内如何更新,以及所涉及要点梳理。 IOS系统 Andriod系统 官网下载 各类应用市场 (本文聚焦点) 功能清单(按步骤) UpgradeCard组件(展示升级内容) 进行新旧版本对比判断是否需要更新 下载更新然后安装应用 UpgradeCard组件 组件需要包含基本标题、...
学习
flutter2024-11-03
Flutter应用内更新App版本使用flutter_downloader而非ota_update
做当前App应用内更新的前提:用户可以在App更新的时候还可以使用软件,不能让他一直等待下载,关闭下载组件后,打开组件还能继续看到他的进度,并且用户锁屏或者短暂退出APP后需要保证任务不能总是挂掉,这里没有用到保活,而是需要用到生命周期去让他暂停和恢复,所以当前app还要有一个全局管理类保存任务id。UI图在最后 (插件文档说明可以通知栏显示,但是我用的这个版本在100%下完后总是failed,而不是complete,就不会很友好,后面...
学习

评论

请登录后发表评论

去登录
加载评论中...

目录