网上很多介绍MVVM的文章,在此不做阐述
- Android彻底组件化方案实践
- 组件化设计思路 浅谈Android组件化
- 原理解释文章Android彻底组件化方案实践
- demo解读文章Android彻底组件化demo发布
以上是一些常用的组件化解决方案,以及一些相关的文章
这六种组件化方案的使用对比: https://github.com/luckybilly/AndroidComponentizeLibs
通过对比最终采用CC框架进行组件化开发
这一步和普通的项目创建方式一样,
File-> New-> NewProject 修改build.gradle文件
ext.mainApp = true //设置为true,表示此module为主app module,一直以application方式编译
apply from: rootProject.file('mufeng-cc-settings.gradle')
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android-extensions'
android {
compileSdkVersion rootProject.compileVersion
defaultConfig {
applicationId "com.mufeng.mufengdiary"
minSdkVersion rootProject.minVersion
targetSdkVersion rootProject.compileVersion
versionCode 1
versionName "1.0"
multiDexEnabled true
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
dataBinding {
enabled = true
}
}
在项目中是基于MVVM设计模式 + Databinding + Kotlin 以及一些常用的基础库来封装
这一步是可选的,此模板是根据AndroidStudio的项目创建模板来改造的,可以快速的构建出CC组件化的Module组件
模板下载地址: 点我下载
此模板的使用方法:
- 下载此模板文件
- 解压文件到目录: \android-studio\plugins\android\lib\templates\gradle-projects中
- 重启AndroidStudio
注: 此创建模板同学们也可以自行修改,修改完成后,一定要重启才能生效
好! 模板插件安装成功
组件创建好之后,需要做以下处理
- 添加组件启动Activity
- 添加组件Component实现IComponent接口,并实现两个方法 关于CC的用法,请查看CC使用说明
- 在宿主组件的build.gradle文件下添加
dependencies {
addComponent 'login'
}
源码地址: https://github.com/hanlin19900610/MVVMComponent
- MVVM
- Databinding
- kotlin
- CC组件化解决方案
- AndroidX
- RxJava全家桶
- RxBinding
- Rxpermissions
- ViewModel
- LiveData
- AndroidAutoSize(屏幕适配方案)
- Autodispose
- BottomBarLayout
- Xpopup
- RecyclerView-Adapter