在一些項目中會分拆app 和 lib , 這時候引用support的時候,一旦更改版本會出現需要同步更改兩個地方的問題.這種情況,可以通過配置gradle.properties實現替換.
在項目編譯過程中,gradle.properties配置的值會被編譯解析,其作為配置文件使用是很有必要的.
在項目根目錄的gradle.properties文件配置:
# Project-wide Gradle settings. #添加ndk支持(按需添加) android.useDeprecatedNdk=true # 應用版本名稱 VERSION_NAME=1.0.0 # 應用版本號 VERSION_CODE=100 # 支持庫版本 SUPPORT_LIBRARY=24.2.1 # MIN_SDK_VERSION ANDROID_BUILD_MIN_SDK_VERSION=14 # TARGET_SDK_VERSION ANDROID_BUILD_TARGET_SDK_VERSION=24 # BUILD_SDK_VERSION ANDROID_BUILD_SDK_VERSION=24 # BUILD_TOOLS_VERSION ANDROID_BUILD_TOOLS_VERSION=24.0.3
這時候配置app和lib的build.gradle可以這樣寫:
android { compileSdkVersion project.ANDROID_BUILD_SDK_VERSION as int buildToolsVersion project.ANDROID_BUILD_TOOLS_VERSION defaultConfig { applicationId project.APPLICATION_ID // lib項目不需要配置這一項 versionCode project.VERSION_CODE as int versionName project.VERSION_NAME minSdkVersion project.ANDROID_BUILD_MIN_SDK_VERSION as int targetSdkVersion project.ANDROID_BUILD_TARGET_SDK_VERSION as int } } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') //這里注意是雙引號 compile "com.android.support:appcompat-v7:${SUPPORT_LIBRARY}" compile "com.android.support:design:${SUPPORT_LIBRARY}" compile "com.android.support:recyclerview-v7:${SUPPORT_LIBRARY}" compile "com.android.support:support-annotations:${SUPPORT_LIBRARY}" compile "com.android.support:cardview-v7:${SUPPORT_LIBRARY}" compile "com.android.support:support-v4:${SUPPORT_LIBRARY}" }
這樣配置后,當你需要升級你的編譯版本,版本號,支持庫等的時候,僅需要修改項目根目錄的gradle.properties文件即可,是不是又方便了一點點?
想明白了原理,那么不僅僅是這種情況可以使用,很多地方可以這樣用的哦...