summaryrefslogtreecommitdiff
path: root/templates/create/_MODULE_/build.gradle.ftl
blob: 187534cd6866fcc0240f42880a60594b9c1be95e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
<#ftl>
<#--
        Copyright 2013 The Android Open Source Project

        Licensed under the Apache License, Version 2.0 (the "License");
        you may not use this file except in compliance with the License.
        You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

        Unless required by applicable law or agreed to in writing, software
        distributed under the License is distributed on an "AS IS" BASIS,
        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions and
        limitations under the License.
-->

<#-- This build script is a bootstrapper for the "real" android build script that
is contained in templates/base. It includes only what's necessary for Android Studio
to recognize this as an Android project and start the template engine. -->

buildscript {
    repositories {
        google()
        jcenter()
    }

    dependencies {
      <#-- TODO (jewalker): Remove once 3.2 is in production. -->
      <#if sample.androidX?? && sample.androidX?has_content && sample.androidX == "true">
        classpath 'com.android.tools.build:gradle:3.2.0-beta01'
      <#else>
        classpath 'com.android.tools.build:gradle:3.1.3'
      </#if>
    }
}

apply plugin: 'android'


android {
     <#-- Note that target SDK is hardcoded in this template. We expect all samples
          to always use the most current SDK as their target. -->
    compileSdkVersion ${compile_sdk}
    buildToolsVersion ${build_tools_version}
}

task preflight (dependsOn: parent.preflight) {
    project.afterEvaluate {
        <#noparse>
        // Inject a preflight task into each variant so we have a place to hook tasks
        // that need to run before any of the android build tasks.
        //
        android.applicationVariants.each { variant ->
            println variant.name
            tasks.getByPath("prepare${variant.name.capitalize()}Dependencies").dependsOn preflight
        }
        </#noparse>
    }
}