现在跨平台开发技术的发展可谓如火如荼,而跨平台中的双雄则是ReactNative和Flutter。而由Google推出的Flutter目前的发展更可谓是如日中天,大有一统各端开发的架势,以此给大家整理了一个优质的Flutter开源项目,帮助大家学习Flutter开发。
@[toc]
1.Flutter仿携程App
(1)应用截图:
(2)实现功能及特性
实现首页、搜索、旅拍、我的四大模块;
实现网络图片本地缓存;
旅拍模块实现瀑布流布局;
接口数据抓取携程H5端;
集成友盟数据统计;
(3)项目结构:
依赖:
azlistview: ^0.1.2 cupertino_icons: ^0.1.2 cached_network_image: ^1.1.1 dio: ^3.0.3 flutter_swiper: ^1.1.6 flutter_staggered_grid_view: ^0.3.0 flutter_splash_screen: ^0.1.0 fluttertoast: ^3.1.3 flutter_webview_plugin: ^0.3.8 lpinyin: ^1.0.7 package_info: ^0.4.0+6
(4)项目地址:
Github地址:https://github.com/wkl007/flu...
2.Flutter仿微博客户端
(1)应用截图:
(2)实现功能:
仿微博最新版本,还原微博80%的界面,总共涉及到了几十个界面和接口,用到了flutter中的大部分组件
分为首页 视频 发现 消息 我的五个模块
(3)依赖:
cupertino_icons: ^0.1.2 #https://github.com/luanpotter/audioplayers audioplayers: ^0.14.0 #https://github: com/best-flutter/flutter_swiper flutter_swiper: ^1.1.6 #https://github.com/best-flutter/flutter_page_indicator flutter_page_indicator: ^0.0.3 #https://github.com/flutter/plugins/tree/master/packages/video_player video_player: # https://github:com/brianegan/chewie: chewie: ^0.9.5 #https://github.com/flutterchina/azlistview azlistview: ^0.1.2 #https://github.com/flutterchina/lpinyin lpinyin: ^1.0.9 # https://github:com/fluttercandies/extended_text_field: extended_text_field: ^0.5.0 url_launcher: 5.3.0 # https://github: com/fluttercandies/extended_nested_scroll_view: extended_nested_scroll_view: ^0.4.0
(4)项目地址:
Github地址:https://github.com/huangruiLe...
3.Flutter仿抖音App
(1)应用截图:
(2)实现功能:
上下刷视频,视频会自动加载封面
左右滑动去搜索与个人中心
双击冒爱心点赞
看评论
切换底部Tabbar
(3)项目结构:
依赖:
# 加载动画库(好像改版之后就没用到了) flutter_spinkit: ^4.1.2 # Bilibili开源的视频播放组件 fijkplayer: ^0.8.3 # 基础的透明动画点击效果 tapped: any # map安全取值 safemap: any
主要文件:
./lib ├── main.dart ├── mock │ └── video.dart # 假数据 ├── other │ └── bottomSheet.dart # 修改了系统BottomSheet的高度 ├── pages │ ├── cameraPage.dart # 拍摄页(没有实际功能) │ ├── followPage.dart # 略 │ ├── homePage.dart # 主页面,包含tikTokScaffold的实际应用功能 │ ├── msgDetailListPage.dart # 略 │ ├── msgPage.dart # 略 │ ├── searchPage.dart # 略 │ ├── todoPage.dart # 略 │ ├── userDetailPage.dart # 略 │ ├── userPage.dart # 略 │ └── walletPage.d # 略 ├── style │ ├── style.dart # 全局文字大小与颜色 │ └── text.dart # 主要的几个文字样式 └── views ├── backButton.dart # iOS形状的返回按钮组件 ├── loadingButton.dart # 可以设置为载入样式的按钮组件 ├── selectText.dart # 可设置为“选中”或者“未选中”样式的文字 ├── tikTokCommentBottomSheet.dart # 仿Tiktok评论样式 ├── tikTokHeader.dart # 仿Tiktok顶部切换组件 ├── tikTokScaffold.dart # 仿Tiktok核心脚手架,封装了手势与切换等功能,本身不包含UI内容 ├── tikTokVideo.dart # 仿Tiktok的视频UI样式封装,不包含视频播放 ├── tikTokVideoButtonColumn.dart # 仿Tiktok视频右侧的头像与点赞等按钮列的组件 ├── tikTokVideoGesture.dart # 仿Tiktok的双击点赞效果 ├── tikTokVideoPlayer.dart # 视频播放页面,带有控制滑动的VideoListController类 ├── tiktokTabBar.dart # 仿Tiktok的底部Tabbar组件 ├── tilTokAppBar.dart # 仿Tiktok的Appbar组件 ├── topToolRow.dart # 用户页面的顶部状态,在tab切换到user页面时隐藏返回按钮 └── userMsgRow.dart # 一条用户信息的样式组件
(4)项目地址:
GitHub仓库地址:https://github.com/mjl0602/fl...
4.Flutter仿斗鱼App
(1)应用截图:iOSAndroid
(2)实现功能:
登录(使用osc账号)
查看资讯(未登录即可查看)
查看、回复、发表、评论动弹(需要登录)
动弹小黑屋(需要登录)
“发现”部分的功能基本上都是用H5实现
资讯列表、动弹列表、评论列表支持下拉刷新或分页加载
支持主题切换(入口在侧滑菜单-设置-切换主题)
动弹中的图片预览暂未实现
摇一摇、“我的”页面功能暂时没完成
(3)项目地址:
Github地址:https://github.com/yubo725/fl...
6.Flutter仿豆瓣客户端App
(1)应用截图:
2)实现功能:
首页 pages/home
homo_app_bar.dart 首页导航头
home_page.dart 首页
my_home_tab_bar.dart 首页tab
书影音 pages/movie
book_audio_video_page.dart 书影音页面
detail_page.dart 影片、电视详情页面
person_detail_page.dart 演员页面介绍
小组 pages/group
市集 shop_page.dart
市集的数据使用两个webview
我的 page/person
(3)项目地址:
Github地址:https://github.com/kaina404/F...
7.闲鱼技术实践开源
阿里的咸鱼技术团队在国内进行Flutter技术研究是比较早的,现在咸鱼APP中的许多模块也是采用了Flutter进行开发,同时也开源了很多技术框架以及相应的技术文档。去年咸鱼团队发布了《Flutter in action》电子书,总结了在咸鱼APP开中的实践经验,现在又进行思考创新重新整理的升级版的文档,发布了《Flutter技术解析与实战》。
目前本书的电子版开放下载(30M左右 ,请开启wifi环境)。