Reading:一款不错的Material Desgin风格的Kotlin版本的开源APP

版权声明:本文为博主原创文章,转载请标明出处。 https://blog.csdn.net/lyhhj/article/details/81946831

Reading

https://github.com/Hankkin/Reading

简介

很久不见,重新拾起博客吧,今天分享一个开源APP-Reading,项目的初衷是因为自己平时翻文章,但是公众号又经常忘记看,自己索性搞一个APP吧,顺便练一下Kotlin。借助着WanAndroid OpenApi搞起,同时里面加了一些小工具,具体功能向下看吧,然后也尝试了一下以前想实现但是没实现过的功能,废话不多说,先来一波图。各位如果有什么意见可以在Issues上提,或者联系我。

Reading: Reading是一款基于WanAndroid OpenApi开发的阅读类工具,如果你是一个热衷于Android开发者,那么这款软件能帮助你阅读精品Android文章。同时Reading中还包含”英文单词”、”账号本子”、”天气”、”查单词”、”快递查询”等小工具。项目基于”Kotlin+MVP”架构开发,风格大概也许属于Material Desgin原质化风格,包含主题颜色切换、百变Logo、等功能。在此感谢WanAndroid的OpenApi,以及其它开源项目的贡献。

ScreenShot

DownLoad

https://fir.im/Reading

Function Tips

1.首页

  • WanAndroid API实现Android文章列表热门搜索文章项目列表
  • 刷新、置顶、分享文章搜索文章搜索历史
  • 收藏列表

2.工作台

  • 快递查询 使用快递100免费API进行快递查询
  • 扫一扫 快速扫一扫、从相册选择扫一扫
  • 查询单词 使用有道SDK查询单词 加入单词本
  • 单词本 单词本记录功能 标记重点
  • 账号本子 新建账号 保存本地 记录你的常用账号密码
  • 每日推荐 标记重点的单词推荐在首页

3.我的

  • 登录注册 使用WanAndroid Api进行账号注册登录
  • TODO List WanAndroid API 待办事项 (待开发)
  • 设置 个性换肤、账号锁功能、本地数据备份、百变Logo、清除缓存

Skill Tips

  • 项目架构 使用MVP架构模式搭建,封装MvpActivity、MvpFragment、BasePresenter、BaseView。P层绑定V层生命周期 。具体可见MVP包
  • 网络层 使用Retrofit+RxJava进行网络请求,封装公共Rerofit的HttpClientUtils(创建RetrofitBuilder、OkHttpClient、addHeader、拦截器、Cookie、https等)、工厂模式创建不同BaseUrl的网络对象。具体可见http包
  • 缓存 使用GreenDao数据库缓存本地数据,并提供数据备份、还原功能。同时结合MVP架构,将数据库操作作为Dao层,Dao层封装Protocol,利用工厂模式包装GreenDao产生的xxxBeanDao
  • RecycleAdapter 封装RecycleView Adapter 配合SwipeRefreshLayout支持下拉刷新、上拉加载功能,不满足一屏数据
  • RxBusTools 封装RxBusTools事件分发 封装BaseActivity、BaseFragment统一处理注册监听事件
  • StatuBarUtils沉浸式 使用写代码的猴子StatusBarUtil 状态栏工具类(实现沉浸式状态栏/变色状态栏)适配沉浸式通知栏
  • 主题切换 B站开源框架MagicaSakura
  • 百变Logo Android群英传中利用根据主题颜色动态切换Icon,部分机型可能会出现crash,目前还没找到更好的解决方案,所以提供了开启关闭的开关。如果有大神可以在Issues提供。
  • 本地数据备份还原 通过读取数据库数据写入txt文件,读取txt文件数据还原实现,记录备份还原的时间戳作为版本号
  • 单词翻译 使用有道SDK翻译单词
  • FloatActionButton 实现首页悬浮按钮 点击展开
  • HorizontalScrollView+ViewPager 首页仿网易云音乐滑动
  • BottomSheet 主题切换底部弹出框
  • 手势解锁 参考Github-ihsg/PatternLocker

Version

V1.0.1

  • 完善数据备份还原清空数据功能
  • 完善账号锁功能
  • 新增版本号

V1.0.0

  • 首次提交 部分功能不完善

License

Copyright (C) 2018 Hankkin Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.


我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=1v9bg469utllf

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Python自动化测试

CSV文件在网络爬虫中的应用

在上一个文章中详细的介绍了CSV文件内容的读取和写入,那么在本次文章中结合网络爬虫的技术,把数据获取到写入到CSV的文件中,其实利用爬虫的技术...

21940
来自专栏腾讯云TStack专栏

FileStore压缩存储(优化篇)

前言 前面已经分析过RBD在Ceph的文件分布,就是将一个完整的块设备,映射成大小相同的数据块,然后通过Crush算法进行Map,最后存储在文件中。FileS...

1.1K40
来自专栏FreeBuf

藏匿在邮件里的“坏小子”

不知从什么时候开始,我的垃圾邮件开始暴增,而且主题千奇百怪,有“再也不用去澳门赌博”、“免保人、免抵押”…等推广主题;有“南北方压岁钱差距有多大?”、“爱过才知...

16980
来自专栏IT派

从零开始:手把手教你安装深度学习操作系统、驱动和各种python库!

为了研究强化学习,最近购置了一台基于 Ubuntu 和英伟达 GPU 的深度学习机器。尽管目前在网络中能找到一些环境部署指南,但目前仍然没有全面的安装说明。另外...

50580
来自专栏zhisheng

机器常见需要关注的监控指标

做运维,不怕出问题,怕的是出了问题,抓不到现场,两眼摸黑。所以,依靠强大的监控系统,收集尽可能多的指标,意义重大。但哪些指标才是有意义的呢,本着从实践中来的思想...

34910
来自专栏CSDN技术头条

详解 NoSQL 数据库的分布式算法

系统的可扩展性是推动NoSQL运动发展的的主要理由,包含了分布式系统协调,故障转移,资源管理和许多其他特性。这么讲使得NoSQL听起来像是一个大筐,什么都能塞进...

24990
来自专栏Spark学习技巧

如何理解Linux中的load averages?

经常和 Linux 打交道的童鞋都知道,load averages 是衡量机器负载的关键指标,但是这个指标是怎样定义出来的呢?

10620
来自专栏派森公园

深入理解Linux LA

经常和Linux打交道的童鞋都知道,load averages是衡量机器负载的关键指标,但是这个指标是怎样定义出来的呢?

19440
来自专栏北京马哥教育

用python爬虫抓站的一些技巧总结

这些脚本有一个共性,都是和web相关的,总要用到获取链接的一些方法,再加上simplecd这 个半爬虫半网站的项目,累积不少爬虫抓站的经验,在此总结一下,那么以...

30250
来自专栏智慧教育

以语音评测的PC端demo代码为例,讲解口语评测如何实现

腾讯云智聆口语评测(英文版)(Smart Oral Evaluation-English,SOE-E)是腾讯云推出的语音评测产品,是基于英语口语类教育培训场景和...

1.1K30

扫码关注云+社区

领取腾讯云代金券