前言
如果想自己编译,建议flutter环境使用最新的stable分支(我目前使用的是stable分支的1.12.13+hotfix.5),由于项目中使用了较新的技术点,所以如果是老版本的环境应该会因为找不到类或者方法而报错。
另外……ios因为没设备,所以也不知道具体是否正常,讲道理应该没啥问题的。plugin,代码这块也是基本的flutter代码,应该没什么特殊的…………
本人也是在不断摸索学习flutter中,所以这个项目中存在的错误或者低性能部分,还请不吝提issue或者pr。
总之,欢迎pr、fork、star,或者在issue区中提出有意义的意见或者建议。
顺便提一下:
多图流量警告!
效果图
书库
搜索页
详情页
阅读页
核心技术点(非UI)简单概括
整体架构:
- 基于provider的实现的mvvm**的模板框架
书库页:
- 数据库sqflite使用
搜索页
- rxdart的一种小小应用
详情介绍页
- 可以折叠展开的text
- 主题色随图片
阅读页(核心)
- Flutter中textPainter的使用,包含绘制、测量等.
- canvas的使用.
- 三种翻页动画(左右仿真翻页、上下滑动翻页、覆盖翻页)的实现.
- 离线缓存
- sharedPreference、屏幕亮度等用户设置内容。
- stream的一种小小应用
- dart中协程以及flutter的isolate的一些使用方法
- 一种超低耦合的listView按index跳转的方式(目录页)
里程碑(暂定)
未实现的部分:
- 排行榜
- 书评
- 下载
- 本地书籍导入、wifi传书等其他导入书籍方式
- 非txt格式的数据支持
- 网页抓包处理解析(用于解析网页而非接口获取的书籍信息)
- 音量键翻页
- 语言读书,自动翻页
特别感谢
flutter_app(追书神器的接口以及介绍页来自于这个项目)
BookPage(阅读页的实现思路参考自这个项目)