重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
感谢 知乎日报-API-分析 提供的api帮助完成这个demo
成都创新互联公司专注于企业全网整合营销推广、网站重做改版、松岭网站定制设计、自适应品牌网站建设、H5场景定制、成都商城网站开发、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为松岭等各大城市提供网站开发制作服务。
该项目完全开源,单纯为了学习与交流,希望大家喜欢,多多提意见。
后续会将未来学到的新知识点用到该项目,持续更新
1.今日热点
2.主题分类
3.文章详情
4.抽屉列表增加缓存, 防止多次拉去数据
5.评论列表 (界面,动画优化)
6.主题列表 (界面,动画优化)
7.主页banner自动轮播,手指滑动是禁止轮播,放开则继续
8.刷新数据失败,增加重试按钮
9.分享UI
9.登录UI,联动交互(在评论界面可以点击写点评进入)
1.Flutter加载Html
1.注册
2.登录
3.发表评论
4.收藏
5.等等
之前开发了一个纯Flutter的项目,结果接到个新的需求需要使用Flutter单独开一个模块集成到原有的android项目中
下面分享一下如何集成现有的项目和如何继承以及碰到的问题
1.首先第一步 修改gradle
因为 Flutter 当前仅支持为 x86_64,armeabi-v7a 和 arm64-v8a 构建预编(AOT)的库 所以我们需要修改gradle的文件限制 APK 中支持的架构,从而避免 libflutter.so找不到引起的崩溃
2.新建一个FlutterModel的工程
2.使用aar文件 因为所有工程统一使用jenkins打包所以我们放在本地肯定是不合适的
说以我们需要 打包aar并上传服务器
上传完成后在android中引用
在开发中遇到的问题
1.关于android和Ios中的跳转传参问题
这个问题在android端还是比较方便的 但是的在Ios端并不怎么好实现
最终决定使用flutter_boost来完成android和Ios与Flutter的通信操作
flutter_boost github地址:
集成文档:
集成文档给出了 但是没有android的 尴尬
下满分享下android的集成
(1)在flutter的 pubspec.yaml工程中添加
(2)修改android工程
使用本地工程的时候需要在工程共添加
使用aar的时候不需要添加
(3)在android工程中添加对应的条状路由配置
(4)在使用默认的flutter_boost启动界面的时候可能碰到状态栏丢失的情况
所以最好集成BoostFlutterActivity写一个新的activity方便处理状态栏和activity进出动画
(5)跳转并传参
//params 传多个参数可以使用json的形式
2.在flutter中的网络框架使用的dio结果在ios的弹出loading的时候出现卡顿现象
解决方式:1.服务换证书 (但是后台太忙暂时没有支持的人员)
2.ios使用原生的loading解决
3.在使用dio的时候出现ios部分手机 网络请求缓慢问题
解决方法:请求的时候使用http 2.0协议
插件地址:
透明视频动画是目前比较流行的实现动画的一种, 大厂也相继开源自己的框架,最终我们选中 腾讯vap ,它支持了Android、IOS、Web,为我们封装flutter_vap提供了天然的便利,并且它提供了将帧图片生成带alpha通道视频的工具,这简直太赞了。
VAP(Video Animation Player)是企鹅电竞开发,用于播放酷炫动画的实现方案。
video for youtube
video for qiniu
apk download
github
showModalBottomSheet 所弹出的内容高度是固定的。要想自适应自己布局的高度只需如下两点:
加入 isScrollControlled: true 后,弹窗高度会变成全屏的。接下来就是自己布局中的处理。
BottomPhotoDialog是我自己写的想要弹出的布局。在根节点中用SingleChildScrollView来包裹Column即可让弹窗高度适应布局高度