组件化 + Arouter + Jetpack + Rxjava + Retrofit + AOP 等框架

Posted Wei_Leng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了组件化 + Arouter + Jetpack + Rxjava + Retrofit + AOP 等框架相关的知识,希望对你有一定的参考价值。

Wanandroid

项目地址:1170762202/WanAndroid 

简介: 🔥🔥🔥组件化 + Arouter + Jetpack + Rxjava + Retrofit + AOP 等框架

更多:作者   提 Bug   

标签:

简介

本项目基于 组件化 + MVVM + Arouter + Jetpack + Rxjava + Retrofit + AOP 等框架实现的一款开源项目。如有任何疑问或 bug 欢迎给我提issues),项目会一直维护下去,一起努力打造一个完美的 app。 源码地址 喜欢的话,记得给个 star 哦!

2.0.0 版本更新

  • MVVM 架构

1.3.1 版本更新

  • 自定义 Gradle 插件 + ASM 实现无埋点监控

1.2.1 版本更新

  • 新增国际化,兼容部分机型国际化失败

1.1.1 版本更新

  • module 单独编译运行
  • module-main 迁移至 app,并移除 module-main

历史版本

首页有彩蛋哦,等你发现!!!

效果图

效果图加载不出来点我

 |  |:-|:-|

 |  |  |  |:-|:-|:-|:-|

 |  |  |  |:-|:-|:-|:-|

 |  |  |  | |:-|:-|:-|:-|

主要功能

  • 首页、项目、广场、公众号、我的
  • 登录、注册 动画交互
  • 搜索页面共享元素动画过渡
  • 项目页面仿高德地图滑动面板交互
  • 广场页面 tab 跟随滑动系数渐变、列表采用谷歌爸爸的flexboxlayout )流式布局
  • 广场页面根据滑动系数给 indicator 添加动画效果
  • 公众号页面点击左上角为一个 90°的 arc 交互动画,列表数据从下往上过渡的动画效果
  • 我的页面仿百度外卖个人中心水波纹效果
  • 整体采用Material Design )设计风格
  • 首页有彩蛋哦!

项目目录结构

目录结构

|- WanAndroid
||-- app // app 入口
    ||librarys //library 库
      ||--library-aop// aop 封装(登录校验、点击)
      ||--library-db// room 数据库封装
      ||--library-network// 网络请求封装(livedata+rxjava+retrofit)
      ||--library-base// 基础封装(BaseAc、BaseFg、BaseUtil 等)
      ||--library-common//通用库(全局 Context 获取等)
      ||--library-widget// 控件封装
  ||--modules// 功能模块
    ||--module-home// 首页模块
    ||--module-login// 登录模块
    ||--module-project// 项目模块
    ||--module-square // 广场模块
    ||--module-public //公众号模块
    ||--module-mine//我的模块
    ||--module-web//网页模块
  ||--plugins//插件模块
    ||--plugin-lifecycle //生命周期插件
||-- README.md

module 单独编译运行说明

gradle.properties 文件下有个"集成开发模式" 和 "组件开发模式"的切换开关 true 表示组件独立运行,false 表示一个 library

isRunModule=true

主要开源框架

点我下载或者扫码下载

致谢

以上是关于组件化 + Arouter + Jetpack + Rxjava + Retrofit + AOP 等框架的主要内容,如果未能解决你的问题,请参考以下文章

说到Jetpack路由组件熟悉的只有ARouter框架?今天带你深入理解功能强大的Navigation架构

ARouter原理解析之仿ARouter自定义路由框架

android 手写-组件化与ARouter框架!!

Android彻底组件化—如何使用Arouter,十年Android编程开发生涯

ARouter 组件之间跳转需免混淆

使用阿里ARouter路由实现组件化(模块化)开发流程