AndroidStudio加速之--(二)巧用Project Template

AndroidStudio加速之--(二)巧用Project Template

相关文章:
AndroidStudio加速之–构件仓库Artifactory
AndroidStudio加速之–巧用Project Template【本文】

一、前言

经过上文在构件仓库上的实践,我们已经实现了首次构建速度的大大提升。然而昨晚群里的小伙伴又抛出一个疑问,就是我们每次创建工程的时候,能不能自动把之前的内网仓库地址,以及gradle路径进行修改从而再次解放双手的重复劳动呢。
然后经过和群友的商讨,这里就揭晓答案了–Project Template。可能我们在编程的过程中经常用的是LiveTemplates,从而忽略了Project Template。本文就针对上述问题来入手,通过修改Project Template来实现。
其实当我们发现这个Project Template之后,我们是不是可以考虑下定制我们自己的工程了呢,除了上面相关的定制,比如我们想新建多模块的工程,那我要一个一个的模块去创建么,有没有可以一键创建多个模块的方法呢,自定义Project Template可不可以实现呢,这里不是本文的重点,本人稍后会对此进行探索和实践,现在就当做给大家的思维发散吧,希望各位一起去深入探究下Project Template。

二、初识Project Template

你是什么时候注意到这个Project Template的呢,我想大概是你要创建新工程的时候,我们点击File->New->New project,这时候就会弹出如下页面,让我们选择工程模板(根本没看过标题的举手,算我一个)。可以看到下文各种各样的模板可以给我们创建。
在这里插入图片描述

三、Project Template存放位置

那么这些模板的存放位置在哪里呢?
答案:在你Android Studio安装目录的plugins\android\lib\templates文件夹下,例如我电脑是64位默认装在了C盘,所以位置是 C:\Program Files\Android\Android Studio\plugins\android\lib\templates,可以看到该文件夹下有activities,fragments等等文件夹,里面包含了各种相关的模板,用记事本打开各个文件去查看,可以看到里面都是我们工程中熟悉的代码。

而要解决我们前言中提到的两个问题,那么只需分别去查看这俩文件:

  • gradle-projects\NewAndroidProject\root\build.gradle.ftl
  • gradle\wrapper\gradle\wrapper\gradle-wrapper.properties

第一个文件原文如下:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    <#if generateKotlin>ext.kotlin_version = '${kotlinVersion}'</#if>
    repositories {
        google()
        jcenter()
        <#if includeKotlinEapRepo!false>maven { url '${kotlinEapRepoUrl}' }</#if>
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:${gradlePluginVersion}'
        <#if generateKotlin>classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"</#if>

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        <#if includeKotlinEapRepo!false>maven { url '${kotlinEapRepoUrl}' }</#if>
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

第二个文件原文如下:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-4.8-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

看到这里,怎么解决前言中的问题已经很明显了吧。

注意:如果无法直接修改上述两者的内容,需要先将这两个文件拷贝出来,修改后再粘贴回去直接替换源文件。

【卧槽,修改的第二处新建工程居然不生效,正在查找中,肯定是有脚本又把这个属性文件修改了】

四、总结

本文只是根据实际情况,稍微修改了下Project Template的文件。然而工程模板不只是强大在这里,后续我们就一起努力实现前言中所说的–一键生成多模块的工程,甚至是组件化工程吧。这里给自己挖个坑,看什么时候能填完,填完之后必定补上相关文章。

发布了46 篇原创文章 · 获赞 56 · 访问量 8万+

猜你喜欢

转载自blog.csdn.net/u010976213/article/details/105675482