基于CC的Android MVVM 组件化实现

基于CC的Android MVVM 组件化实现

MVVM

网上不少介绍MVVM的文章,在此不作阐述android

组件化

经常使用组件化解决方案

1. CC
2. 获得DDComponentForAndroid
3. ModularizationArchitecture
4. 阿里Arouter
5. 聚美组件化方案
6. ActivityRouter

以上是一些经常使用的组件化解决方案,以及一些相关的文章git

这六种组件化方案的使用对比: github.com/luckybilly/…github

经过对比最终采用CC框架进行组件化开发设计模式

无图无真相

image

image

下面开始撸代码

一. 建立宿主项目

这一步和普通的项目建立方式同样,android-studio

File-> New-> NewProject 修改build.gradle文件bash

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 以及一些经常使用的基础库来封装架构

三. 引入CC组件化建立Module模板

这一步是可选的,此模板是根据AndroidStudio的项目建立模板来改造的,能够快速的构建出CC组件化的Module组件app

模板下载地址: 点我下载框架

此模板的使用方法:模块化

  1. 下载此模板文件
  2. 解压文件到目录: \android-studio\plugins\android\lib\templates\gradle-projects中
  3. 重启AndroidStudio

注: 此建立模板同窗们也能够自行修改,修改完成后,必定要重启才能生效

好! 模板插件安装成功

四. 根据组件模板来建立Module模板

直接上图

image

组件建立好以后,须要作如下处理

  1. 添加组件启动Activity
  2. 添加组件Component实现IComponent接口,并实现两个方法 关于CC的用法,请查看CC使用说明
  3. 在宿主组件的build.gradle文件下添加
dependencies {
    addComponent 'login'
}
复制代码

image

至此实现了简单吗组件化开发

源码地址: github.com/hanlin19900…

项目中用到的技术知识

感谢

相关文章
相关标签/搜索