android架构框架设计

本文记录了一套基于MVVM模式的Android开发框架设计,采用DataBinding实现数据驱动,模块化包括common、module(如user)、network、utils和views。详细介绍了各部分功能,如UI、业务逻辑、数据模型的组织。项目使用ARouter进行页面跳转,重点封装了网络请求和列表加载,利用BindingAdapter实现交互。同时,通过Lifecycle管理应用生命周期,并统一管理常量和注释,提升项目可维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了开发效率,记录一下自己的开发框架,整体使用mvvm的模式,使用android自带的databinding开发数据驱动的页面逻辑。
项目组成
大致分为几个部分,common存放一般在各个模块都会用到的类,module是项目模块,主要是业务模块,如user用户模块,user下有有三个包ui/model/viewCtrl ui存放该模块下的Activity,viewCtrl存放的是业务处理逻辑类,用过databinding的都知道,databing可以绑定类,viewCtrl就是界面视图的逻辑类,model存放数据模型。network是网路框架,utils是工具包,views是自定义的view
github地址:temp模板地址
项目适配的方案是以限定符进行适配,以screeMatch工具批量生成。参考
项目中所用到三方库:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 27
    defaultConfig {
        applicationId "com.zjhc.jxzq.temp"
        minSdkVersion 15
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        javaCompileOptions {
            annotationProcessorOptions {
                arguments = [moduleName: project.getName()]
            }
        }
    }
    dataBinding {
        enabled = true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            buildTypes {
                release {
                    //是否开启zip优化
                    zipAlignEnabled true
                    minifyEnabled false
                    proguardFiles getDefaultProguardFile('pr
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值