Android 组件化实战二: 项目部署

Android 组件化实战一: Gradle基础语法
Android 组件化实战二: 项目部署
Android组件化实战三: 模块之间的交互
Android组件化实战四: APT的介绍与使用
Android组件化实战五: APT的高级用法JavaPoet
Android组件化实战六:路由架构设计

前言

组件化项目的意义主要体现在这几个方面,首先就是面试的时候,如果简历上写了三五年的工作经历,但是被问到组件化的相关原理答不上来,确实说不过去。在开发需求层面,即不相互依赖、又可以相互交互、任意组合、高度解耦;在团队开发层面,可以分模块打包、测试,统一版本管理,大大提高效率。
在这里插入图片描述

  • 编译速度:我们可以按需测试单一模块极大提升了开发速度
  • 超级解耦:极度降低了模块之间的耦合,便于后期维护与更新
  • 功能重用:某一模块的功能在另外的组件化项目中使用只需要单独依赖这一模块即可
  • 便于团队开发:组件化架构师团队开发必然会选择的一种开发方式,它能有效的使团队更好的协作

Phone Module和Android Library区别、切换

在这里插入图片描述

新建common公共库、order订单库、personal个人信息库

这里为了便于演示,新建Phone Module 的order和Android Library的personal,在组件化部署中如何进行切换

有了上一篇文章的分析,我们知道可以将各个子模块build.gradle文件中的公共属性抽取出来到单独的gradle文件config.gradle文件,在项目根目录下的build.gradle头部加入自定义config.gradle,apply from: “config.gradle”,相当于layout布局中加入include语法

// 添加多个自定义属性,可以通过ext代码块
ext{
   
    /**
     * 定义一个项目全局变量isRelease,用于动态切换:组件化模式 / 集成化模式
     * false: 组件化模式(子模块可以独立运行),
     * true :集成化模式(打包整个项目apk,子模块不可独立运行)
     */
    isRelease = false

    // 建立Map存储,对象名、key都可以自定义,groovy糖果语法,非常灵活

    androidId = [
            compileSdkVersion: 29,
            buildToolsVersion: "29.0.3",
            minSdkVersion    : 21,
            targetSdkVersion : 29,
            versionCode      : 
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值