xref: /aosp_15_r20/developers/build/templates/WearPlusShared/Wearable/build.gradle.ftl (revision d353a188ca6ec4b5eba25b5fbd7bcb8ce61322fb)
1*d353a188SXin Li<#--
2*d353a188SXin Li Copyright 2014 The Android Open Source Project
3*d353a188SXin Li
4*d353a188SXin Li Licensed under the Apache License, Version 2.0 (the "License");
5*d353a188SXin Li you may not use this file except in compliance with the License.
6*d353a188SXin Li You may obtain a copy of the License at
7*d353a188SXin Li
8*d353a188SXin Li     http://www.apache.org/licenses/LICENSE-2.0
9*d353a188SXin Li
10*d353a188SXin Li Unless required by applicable law or agreed to in writing, software
11*d353a188SXin Li distributed under the License is distributed on an "AS IS" BASIS,
12*d353a188SXin Li WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*d353a188SXin Li See the License for the specific language governing permissions and
14*d353a188SXin Li limitations under the License.
15*d353a188SXin Li-->
16*d353a188SXin Libuildscript {
17*d353a188SXin Li    repositories {
18*d353a188SXin Li        google()
19*d353a188SXin Li        jcenter()
20*d353a188SXin Li    }
21*d353a188SXin Li
22*d353a188SXin Li    dependencies {
23*d353a188SXin Li        classpath 'com.android.tools.build:gradle:3.4.2'
24*d353a188SXin Li    }
25*d353a188SXin Li}
26*d353a188SXin Li
27*d353a188SXin Liapply plugin: 'com.android.application'
28*d353a188SXin Li
29*d353a188SXin Lirepositories {
30*d353a188SXin Li    google()
31*d353a188SXin Li    jcenter()
32*d353a188SXin Li<#if sample.repository?has_content>
33*d353a188SXin Li    <#list sample.repository as rep>
34*d353a188SXin Li    ${rep}
35*d353a188SXin Li    </#list>
36*d353a188SXin Li</#if>
37*d353a188SXin Li}
38*d353a188SXin Li
39*d353a188SXin Lidependencies {
40*d353a188SXin Li<#list sample.dependency_wearable as dep>
41*d353a188SXin Li    <#-- Output dependency after checking if it is a play services depdency and
42*d353a188SXin Li    needs the latest version number attached. -->
43*d353a188SXin Li    <@update_play_services_dependency dep="${dep}" />
44*d353a188SXin Li</#list>
45*d353a188SXin Li    implementation ${play_services_wearable_dependency}
46*d353a188SXin Li
47*d353a188SXin Li  <#-- TODO (jewalker): Revise once androidX is released to production. -->
48*d353a188SXin Li  <#if !sample.androidX?? || !sample.androidX?has_content || sample.androidX == "false">
49*d353a188SXin Li    implementation ${android_support_v13_dependency}
50*d353a188SXin Li  </#if>
51*d353a188SXin Li
52*d353a188SXin Li    <#if sample.preview_wearable_support_provided_dependency?? && sample.preview_wearable_support_provided_dependency?has_content>
53*d353a188SXin Li    compileOnly '${sample.preview_wearable_support_provided_dependency}'
54*d353a188SXin Li    <#else>
55*d353a188SXin Li    compileOnly ${wearable_support_provided_dependency}
56*d353a188SXin Li    </#if>
57*d353a188SXin Li
58*d353a188SXin Li    <#if sample.preview_wearable_support_dependency?? && sample.preview_wearable_support_dependency?has_content>
59*d353a188SXin Li    implementation '${sample.preview_wearable_support_dependency}'
60*d353a188SXin Li    <#else>
61*d353a188SXin Li    implementation ${wearable_support_dependency}
62*d353a188SXin Li    </#if>
63*d353a188SXin Li
64*d353a188SXin Li    implementation project(':Shared')
65*d353a188SXin Li}
66*d353a188SXin Li
67*d353a188SXin Li// The sample build uses multiple directories to
68*d353a188SXin Li// keep boilerplate and common code separate from
69*d353a188SXin Li// the main sample code.
70*d353a188SXin LiList<String> dirs = [
71*d353a188SXin Li    'main',     // main sample code; look here for the interesting stuff.
72*d353a188SXin Li    'common',   // components that are reused by multiple samples
73*d353a188SXin Li    'template'] // boilerplate code that is generated by the sample template process
74*d353a188SXin Li
75*d353a188SXin Liandroid {
76*d353a188SXin Li
77*d353a188SXin Li  <#if sample.compileSdkVersionWear?? && sample.compileSdkVersionWear?has_content>
78*d353a188SXin Li    compileSdkVersion ${sample.compileSdkVersionWear}
79*d353a188SXin Li  <#else>
80*d353a188SXin Li    compileSdkVersion ${compile_sdk}
81*d353a188SXin Li  </#if>
82*d353a188SXin Li
83*d353a188SXin Li    buildToolsVersion ${build_tools_version}
84*d353a188SXin Li
85*d353a188SXin Li    defaultConfig {
86*d353a188SXin Li        versionCode 1
87*d353a188SXin Li        versionName "1.0"
88*d353a188SXin Li
89*d353a188SXin Li      <#if sample.minSdkVersionWear?? && sample.minSdkVersionWear?has_content>
90*d353a188SXin Li        minSdkVersion ${sample.minSdkVersionWear}
91*d353a188SXin Li      <#else>
92*d353a188SXin Li        minSdkVersion ${min_sdk}
93*d353a188SXin Li      </#if>
94*d353a188SXin Li
95*d353a188SXin Li      <#if sample.targetSdkVersionWear?? && sample.targetSdkVersionWear?has_content>
96*d353a188SXin Li        targetSdkVersion ${sample.targetSdkVersionWear}
97*d353a188SXin Li      <#else>
98*d353a188SXin Li        targetSdkVersion ${compile_sdk}
99*d353a188SXin Li      </#if>
100*d353a188SXin Li
101*d353a188SXin Li       <#if sample.multiDexEnabled?? && sample.multiDexEnabled?has_content>
102*d353a188SXin Li         multiDexEnabled ${sample.multiDexEnabled}
103*d353a188SXin Li       </#if>
104*d353a188SXin Li
105*d353a188SXin Li    }
106*d353a188SXin Li
107*d353a188SXin Li    compileOptions {
108*d353a188SXin Li        sourceCompatibility JavaVersion.VERSION_1_7
109*d353a188SXin Li        targetCompatibility JavaVersion.VERSION_1_7
110*d353a188SXin Li    }
111*d353a188SXin Li
112*d353a188SXin Li    sourceSets {
113*d353a188SXin Li        main {
114*d353a188SXin Li            dirs.each { dir ->
115*d353a188SXin Li<#noparse>
116*d353a188SXin Li                java.srcDirs "src/${dir}/java"
117*d353a188SXin Li                res.srcDirs "src/${dir}/res"
118*d353a188SXin Li</#noparse>
119*d353a188SXin Li            }
120*d353a188SXin Li        }
121*d353a188SXin Li        androidTest.setRoot('tests')
122*d353a188SXin Li        androidTest.java.srcDirs = ['tests/src']
123*d353a188SXin Li
124*d353a188SXin Li<#if sample.defaultConfig?has_content>
125*d353a188SXin Li        defaultConfig {
126*d353a188SXin Li        ${sample.defaultConfig}
127*d353a188SXin Li        }
128*d353a188SXin Li<#else>
129*d353a188SXin Li</#if>
130*d353a188SXin Li    }
131*d353a188SXin Li}
132