1. 程式人生 > >Android Studio 使用技巧:修改預設build.gradle

Android Studio 使用技巧:修改預設build.gradle

在專案中發現一些好用的外掛和庫,就想預設在每個工程裡使用,就想到了找找如何直接修改預設工程的build.gradle檔案,經過多方面查詢資料,可以使用下面的方法來改。

比如說有一個好用的butterKnife這個庫,需要新增buildscript的dependencies和compile的dependencies。

我們先找到Android Studio\plugins\android\lib\templates\gradle-projects,然後看名稱就知道NewAndroidProject目錄下的就是建立android工程時預設使用的模板。

F:\install\android-studio\plugins\android\lib\templates\gradle-projects\NewAndroidModule\root\build.gradle.ftl

這個是修改專案級別的東西3.0以後可以加入這個

implementation 'com.jakewharton:butterknife:8.4.0'

然後我們開啟root中的build.gradle.ftl,看起來和一個預設專案裡的結構一模一樣,我們首先把classpath 'com.jakewharton:butterknife-gradle-plugin:8.5.1'新增在buildscript.dependencies的最後面。同時,新增一個版本號字義(這一步也可以省略,如果省略,後面在app的gradle裡就直接指定版本的butterknife)以供在app的gradle裡使用版本號變數來指定butterknife

,如下文中的ext結點。

如:

buildscript {
    repositories {
        jcenter()
<#if mavenUrl != "mavenCentral">
        maven {
            url '${mavenUrl}'
        }
</#if>
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:${gradlePluginVersion}'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
        classpath 'com.jakewharton:butterknife-gradle-plugin:8.5.1'
    }
}

// Define versions in a single place
ext {

  // App dependencies
  butterKnifeVersion = '8.5.1'
}

但是我們在NewAndroidProject目錄裡並沒有找到新建工程後的app目錄裡的那個build.gradle對應的模板,看名稱找到了NewAndroidModule目錄,同樣的步驟開啟root\build.gradle.ftl然後在dependencies節點新增兩行,結果見:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    androidTestCompile('com.android.support.test.espresso:espresso-core:${espressoVersion!"2.0"}', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
<#if WearprojectName?has_content && NumberOfEnabledFormFactors?has_content && NumberOfEnabledFormFactors gt 1 && Wearincluded>
    wearApp project(':${WearprojectName}')
    compile 'com.google.android.gms:play-services:+'
</#if>

    // code generator for view(這3行是新增的)
    compile "com.jakewharton:butterknife:$rootProject.butterKnifeVersion"
    annotationProcessor "com.jakewharton:butterknife-compiler:$rootProject.butterKnifeVersion"
}

然後儲存檔案,開啟Android Stuido 新建工程。