在一些项目中会分拆app 和 lib , 这时候引用support的时候,一旦更改版本会出现需要同步更改两个地方的问题.这种情况,可以通过配置gradle.properties实现替换.

在项目编译过程中,gradle.properties配置的值会被编译解析,其作为配置文件使用是很有必要的.

在项目根目录的gradle.properties文件配置:

  1. # Project-wide Gradle settings.
  2. #添加ndk支持(按需添加)
  3. android.useDeprecatedNdk=true
  4. # 应用版本名称
  5. VERSION_NAME=1.0.0
  6. # 应用版本号
  7. VERSION_CODE=100
  8. # 支持库版本
  9. SUPPORT_LIBRARY=24.2.1
  10. # MIN_SDK_VERSION
  11. ANDROID_BUILD_MIN_SDK_VERSION=14
  12. # TARGET_SDK_VERSION
  13. ANDROID_BUILD_TARGET_SDK_VERSION=24
  14. # BUILD_SDK_VERSION
  15. ANDROID_BUILD_SDK_VERSION=24
  16. # BUILD_TOOLS_VERSION
  17. ANDROID_BUILD_TOOLS_VERSION=24.0.3

  这时候配置app和lib的build.gradle可以这样写:

  1. android {
  2. compileSdkVersion project.ANDROID_BUILD_SDK_VERSION as int
  3. buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION
  4.  
  5. defaultConfig {
  6. applicationId project.APPLICATION_ID // lib项目不需要配置这一项
  7. versionCode project.VERSION_CODE as int
  8. versionName project.VERSION_NAME
  9. minSdkVersion project.ANDROID_BUILD_MIN_SDK_VERSION as int
  10. targetSdkVersion project.ANDROID_BUILD_TARGET_SDK_VERSION as int
  11. }
  12. }
  13.  
  14. dependencies {
  15. compile fileTree(include: ['*.jar'], dir: 'libs')
  16. //这里注意是双引号
  17. compile "com.android.support:appcompat-v7:${SUPPORT_LIBRARY}"
  18. compile "com.android.support:design:${SUPPORT_LIBRARY}"
  19. compile "com.android.support:recyclerview-v7:${SUPPORT_LIBRARY}"
  20. compile "com.android.support:support-annotations:${SUPPORT_LIBRARY}"
  21. compile "com.android.support:cardview-v7:${SUPPORT_LIBRARY}"
  22. compile "com.android.support:support-v4:${SUPPORT_LIBRARY}"
  23. }

  这样配置后,当你需要升级你的编译版本,版本号,支持库等的时候,仅需要修改项目根目录的gradle.properties文件即可,是不是又方便了一点点?

  想明白了原理,那么不仅仅是这种情况可以使用,很多地方可以这样用的哦...

配置gradle.properties的更多相关文章

  1. 配置gradle的daemon

    文档里提到,配置Daemon,能够加速gradle的构建,为了获取这个性能提上,我也得开启这个Daemon. 在Windows环境下:,可以执行这个命令 (if not exist "%US ...

  2. Intellij IDEA 安装配置Gradle

    1.安装 到官网链接下载最新的bin版本,解压到 D:\Program Files (x86)\JetBrains\IDEA Configuration And Cache\gradle 配置环境变量 ...

  3. [Android Studio系列(五)] Android Studio手动配置Gradle的方法

    1 问题 (1) android sutdio第一次打开一个工程巨慢怎么办? (2) 手动配置Gradle Home为什么总是无效? (3) 明明已经下载了Gradle,配置了gradle home, ...

  4. android gradle.properties

    gradle.properties 里面配置的东西,在gradle 文件里面可以直接引用. 例如: 在你工程根目录的gradle.properties 文件里面 可以这样配置: ## Project- ...

  5. Android Studio手动下载配置Gradle的方法

    1 问题 (1) android sutdio第一次打开一个工程巨慢怎么办? (2) 手动配置Gradle Home为什么总是无效? (3) 明明已经下载了Gradle,配置了gradle home, ...

  6. Android Studio 配置Gradle总结

    一, 问题:①换个新电脑安装完Android Sutdio第一次打开一个工程巨慢怎么办? ② 手动配置Gradle Home为什么总是无效? ③ 明明已经下载了Gradle,配置了gradle hom ...

  7. Android Studio 配置Gradle

    一, 问题:①换个新电脑安装完Android Sutdio第一次打开一个工程巨慢怎么办?② 手动配置Gradle Home为什么总是无效?③ 明明已经下载了Gradle,配置了gradle home, ...

  8. gradle.properties

    gradle.properties # If this is set, then multiple APK files will be generated: One per native platfo ...

  9. MAC下配置gradle用eclipse 打包android程序

    1.下载gradle binhttp://gradle.org/gradle-download/ 2.配置gradle,http://www.douban.com/note/311599602/htt ...

随机推荐

  1. 基于vw的响应式排版布局

    html{ /*iphone6的375px尺寸作为16px基准,600px时字体大小为18px*/ font-size: calc(100% + 2 * (100vw - 375px) / 225); ...

  2. 关于C#中的 static

    一:感受 做商业项目才能更深刻和彻底的探索到技术的原理与真实面貌.以前在学校里面的时候这些C Sharp的基本语法,数据结构,面向对象背的滚瓜乱熟,那真得是背的!无论是从概念从理论上面来谈还是写一个小 ...

  3. 深度学习笔记——PCA原理与数学推倒详解

    PCA目的:这里举个例子,如果假设我有m个点,{x(1),...,x(m)},那么我要将它们存在我的内存中,或者要对着m个点进行一次机器学习,但是这m个点的维度太大了,如果要进行机器学习的话参数太多, ...

  4. window.onload =writeMessage(); 与window.onload =writeMessage;的区别

    window.onload =writeMessage(); window.onload =writeMessage; 异:第一种是window加载时执行writeMesage方法,第二种是把writ ...

  5. linux常用命令-压缩解压命令

    gzip [文件] 压缩后文件格式 .gz,这个命令只能压缩文件,不能压缩目录.并且这个命令压缩后不保留源文件 gunzip [文件] 或者 gzip -d [文件] 解压缩.gz的压缩文件 tar ...

  6. sublime text快捷键

    Ctrl+Shift+V:粘贴并格式化Ctrl+D:选择单词,重复可增加选择下一个相同的单词Ctrl+L:选择行,重复可依次增加选择下一行Ctrl+M:跳转到对应括号Ctrl+K+B:开关侧栏Ctrl ...

  7. Linux下的压缩和解压缩命令——zip/unzip

    zip命令 zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具有".zip"扩展名 的压缩文件. 选项: -A   调整可执行的自动解压缩文件. -b<工作目录> ...

  8. java.lang.NullPointerException的可能原因及处理

    java.lang.NullPointerException的可能原因及处理 java.lang.NullPointerException具体意思是空指针异常,最常见的问题就是没有初始化. 字符串等数 ...

  9. Python 2/3 安装与运行环境设置

    Python 2/3 安装与运行环境设置: 1.Python 软件源:https://www.python.org/    下载Win版本 https://www.python.org/downloa ...

  10. [java]OutOfMemoryError 原因及解决办法

    导致OutOfMemoryError异常的常见原因有以下几种: 内存中加载的数据量过于庞大,如一次从数据库取出过多数据: 集合类中有对对象的引用,使用完后未清空,使得JVM不能回收: 代码中存在死循环 ...