基于Jetpack组件构建的开源项目-WanLearning

WanLearning App」基于 Material Design 风格构建的 玩 Android 客户端,主要是为了适应Kotlin语言开发流程。

项目地址

Github

主要特点

  • 基于Google官方宣贯的MVVM模式开发实践
  • 基于Jetpack组件库构建:LiveData、ViewModel、Lifecycle、Room、DataBinding,目前项目中只是集成的Paging组件,暂未用到
  • 使用Kotlin语言开发,自定义扩展函数,代码简洁
  • 使用协程来构建网络请求,链式调用,方便调试
  • 工程模式以单Activity + 多Fragment架构编写,容易做单元测试和好扩展维护,提升开发效率

架构图

架构组件

效果图

Demo

更新记录

  • 第一个版本,包括首页、公众号、项目、导航、我的5个Tab项页面功能
  • 支持协程方式获取网络请求数据,LiveData来更新UI
  • 支持登陆和注册功能、支持自定义切换主题颜色、支持加载Web Url
  • 支持清除缓存信息,支持列表上拉刷新和下拉加载更多等功能

APK下载

Github下载

感谢

  • 数据来源:玩 Android
  • 项目灵感:JetpackMvvm

第三方库

  • 事件通知:UnPeek-LiveData
  • 加载反馈:LoadSir
  • 网络请求框架:OkHttp、Retrofit
  • 图片库:Glide
  • Json 解析库:Gson
  • 动态请求权限封装:Permissionx
  • 下拉刷新框架:SmartRefreshLayout
  • 提升H5首屏加载速度:VasSonic

给予支持

通过这个项目希望能够帮助大家更好地学习 Jetpack 与 MVVM 架构的结合。

如果你喜欢 WanLearning App 的工程项目,本项目的源代码对你的学习有所帮助,可以在 Github"Star" 支持一下,谢谢!

你可能感兴趣的:(基于Jetpack组件构建的开源项目-WanLearning)