Giter Site home page Giter Site logo

wanandroid's Introduction

简介

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

  • MVVM架构
  • 自定义Gradle插件 + ASM 实现无埋点监控
  • 新增国际化,兼容部分机型国际化失败
  • module单独编译运行
  • module-main迁移至app,并移除module-main

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

效果图

1.png 2.png
欢迎页.gif 登录.gif 首页.gif 收藏动画.gif
公众号.gif 项目.gif 广场.gif 分享文章.gif
1.gif 1.gif 1.gif 1.gif

主要功能

  • 首页、项目、广场、公众号、我的
  • 登录、注册 动画交互
  • 搜索页面共享元素动画过渡
  • 项目页面仿高德地图滑动面板交互
  • 广场页面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

主要开源框架

点我下载或者扫码下载

1600940185(1).jpg

致谢

wanandroid's People

Contributors

11170762202 avatar 1170762202 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wanandroid's Issues

问题请教

请问这个项目用的是哪种架构?感觉不是MVP,又不像MVVM。

ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType

2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at com.zlx.module_base.viewmodel.BaseViewModel.createModel(BaseViewModel.java:38)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at com.zlx.module_base.viewmodel.BaseViewModel.(BaseViewModel.java:32)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at java.lang.reflect.Constructor.newInstance0(Native Method)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at java.lang.reflect.Constructor.newInstance(Constructor.java:343)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.java:267)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:187)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.java:150)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at com.zlx.module_base.base_ac.BaseMvvmAc.initViewDataBinding(BaseMvvmAc.java:42)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at com.zlx.module_base.base_ac.BaseMvvmAc.afterOnCreate(BaseMvvmAc.java:24)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at com.zlx.module_base.base_ac.BaseAc.onCreate(BaseAc.java:60)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at android.app.Activity.performCreate(Activity.java:7896)
2022-09-07 10:25:31.722 8583-8583/com.zlx.sharelive W/System.err: at android.app.Activity.performCreate(Activity.java:7885)

多个组件相互依赖的问题

大神好 项目做的比较久的时候 多个组件相互依赖度都会比较高 这个时候再独立运行单个组件没有别的组件的数据 比如mine组件拿不到login组件的数据 最好是可以在gradle.properties里配置参数 可以多个组件一起运行

aspectj编译问题。

我这边编译的时候总是通不过,会报错。
执行.\gradlew.bat clean assembleDebug
报错
image

但是在 项目 app 下的build.gradle添加
aspectjx { //关闭AspectJX功能 enabled false }
然后就能编译通过,
在把build.gradle的修改恢复,再次编译 .\gradlew.bat assembleDebug能够成功打包运行,

每次只要clean一次,就需要开关一下aspectj

可能是什么原因呢?作者有没有遇到过?

环境:
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.