简介
一款基于Flutter语言开发的高仿抖音App。初衷是用来学习Flutter跨平台技术,积累实战经验。开放出去是让更多的老铁们在技术的路上越走越远…
老铁们喜欢的话,帮忙给个star,多谢!
功能
- 登录、注册
- 上下刷视频
- 同城九宫格展示
- 消息IM:单聊、群聊
- 个人信息
- 上传视频:七牛云、FFmpeg裁剪、取帧
- 首页导航
- 点赞
- 评论
- 搜索
下载体验
截图
|
|
|
工程结构
源码链接:https://github.com/yuange-source/Flutter-TikTok/
技术
- Flutter SDK: 2.5.2
- MVP架构
- websocket通信
- ijkplayer播放器
- FFmpeg编解码视频处理
- 依赖库:
# 加载动画库
flutter_spinkit: ^4.1.2
# ijkplayer播放器
fijkplayer: ^0.8.3
# 基础的点击
tapped: any
# map取值
safemap: any
# The following adds the Cupertino Icons font to your application.
# Use with the CupertinoIcons class for iOS style icons.
cupertino_icons: ^0.1.3
# 下拉刷新上拉加载
pull_to_refresh: ^2.0.0
#toast
fluttertoast: ^3.1.3
# Dart 常用工具类库
common_utils: ^1.1.3
# Flutter 常用工具类库
flustars: ^0.3.3
# Flutter 国际化/多语言库
fluintl: ^0.1.2
# 网络
dio: ^3.0.7
# rxdart
rxdart: ^0.21.0
# 图片缓存
cached_network_image: ^2.0.0-rc
# url_launcher
url_launcher: ^5.0.2
# 格式化String
sprintf: ^4.0.2
# flukit
flukit: ^1.0.0
# 状态管理
provider: ^3.0.0+1
# 路由框架
fluro: ^1.5.1
# 处理键盘事件
keyboard_actions: ^3.1.1
# dart-event-bus
event_bus: ^1.1.0
# 获取应用包的信息
package_info: ^0.4.0+2
# webview
webview_flutter: ^ 0.3.18+1
# 日志工具
logger: ^0.6.0
# 打开相册
image_picker: ^0.6.1+4
# 持久化存储
shared_preferences: ^2.0.13
# 七牛云
qiniu_flutter_sdk: ^0.2.0
# FFmpeg
flutter_ffmpeg: ^0.4.2
# 数据库
sqflite: ^1.3.1
# Dart路径操作库
path: ^1.8.0
运行
- Flutter SDK:2.5.2
- Android Studio Bumblebee | 2021.1.1 Patch
- SDK镜像:pub.flutter-io.cn
可能会遇到的问题
- 问题:Flutter Error: The method ‘toInt‘ isn‘t defined for the class ‘Decimal‘
解决方案:http://www.yuan988.cn/post/218.html