随着产品渠道的铺开,往往一套代码需要支持多个产品形态,这就需要抽象出主要代码到一个Library,然后基于Library扩展几个App Module。

相信每个module的build.gradle都会有这个代码:

android {    compileSdkVersion 22    buildToolsVersion "23.0.1"    defaultConfig {        minSdkVersion 10        targetSdkVersion 22        versionCode 34        versionName "v2.6.1"    }}

当升级sdk、build tool、target sdk等,几个module都要更改,非常的麻烦。最重要的是,很容易忘记,最终导致app module之间的差异不统一,也不可控。
强大的gradle插件在1.1.0支持全局变量设定,一举解决了这个问题。
先在project的根目录下的build.gradle定义ext全局变量:

ext {    compileSdkVersion = 22    buildToolsVersion = "23.0.1"    minSdkVersion = 10    targetSdkVersion = 22    versionCode = 34    versionName = "v2.6.1"}

然后在各module的build.gradle中引用如下:

android {    compileSdkVersion rootProject.ext.compileSdkVersion    buildToolsVersion rootProject.ext.buildToolsVersion    defaultConfig {        applicationId "com.xxx.xxx"        minSdkVersion rootProject.ext.minSdkVersion        targetSdkVersion rootProject.ext.targetSdkVersion        versionCode rootProject.ext.versionCode        versionName rootProject.ext.versionName    }}

然后每次修改project级别的build.gradle即可实现全局统一配置。

更多相关文章

  1. android ListView向上滑动隐藏标题,下拉显示标题栏
  2. 谈中型项目下的编码技巧二
  3. 如何让Activity以全屏方式显示
  4. Android(安卓)Weekly Notes Issue #251
  5. android 在应用中安装其他程序
  6. 浅析Android中的visibility属性
  7. android ActivityGroup认识
  8. android 内置的短信等调用代码
  9. Android实现异步加载图片 ListView

随机推荐

  1. Android中GridView使用
  2. Android上鲜为人知的UI控件介绍和使用
  3. Android(安卓)Studio初学习体会
  4. android语音识别技术
  5. Android开发技巧:动态创建UI界面
  6. Android(安卓)关机流程分析-----(2)JNI和ke
  7. 如何使用命令行编译运行cocos2d-x的andro
  8. Android——四种AterDialog
  9. android:paddingLeft与android:layout_ma
  10. 创建和使用Android(安卓)library工程