1/*
2 * Copyright 2022 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 *      http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17/**
18 * This file was created using the `create_project.py` script located in the
19 * `<AndroidX root>/development/project-creator` directory.
20 *
21 * Please use that script when creating a new project, rather than copying an existing project and
22 * modifying its settings.
23 */
24import androidx.build.SoftwareType
25import com.android.build.api.artifact.SingleArtifact
26
27plugins {
28    id("AndroidXPlugin")
29    id("com.android.application")
30    id("org.jetbrains.kotlin.android")
31}
32
33dependencies {
34    compileOnly(project(":annotation:annotation-sampled"))
35
36    api(project(":wear:watchface:watchface-style-old-api-test-stub"))
37
38    implementation("androidx.core:core:1.1.0")
39    implementation("androidx.wear.watchface:watchface-style:1.0.0")
40    implementation("androidx.wear.watchface:watchface-data:1.0.0")
41    api(libs.kotlinStdlib)
42}
43
44tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).all {
45    kotlinOptions.suppressWarnings = true
46}
47
48tasks.withType(JavaCompile){
49    options.compilerArgs <<"-Xlint:-deprecation"
50}
51
52androidx {
53    name = "WatchFace Style Old Api Test Service"
54    type = SoftwareType.SAMPLES
55    inceptionYear = "2022"
56    description = "Test service built with v1.0.0 of the API, used to check for binary AIDL compat"
57}
58
59android {
60    defaultConfig {
61        minSdk = 26
62    }
63    buildTypes {
64        release {
65            minifyEnabled = true
66            shrinkResources = true
67            proguardFiles getDefaultProguardFile('proguard-android.txt')
68        }
69    }
70    buildFeatures {
71        aidl = true
72    }
73    namespace = "androidx.wear.watchface.style.test.oldApiTestService"
74}
75
76/*
77 * Allow integration tests to consume the APK produced by this project
78 */
79configurations {
80    apkAssets {
81        canBeConsumed = true
82        canBeResolved = false
83        attributes {
84            attribute(
85                    LibraryElements.LIBRARY_ELEMENTS_ATTRIBUTE,
86                    objects.named(LibraryElements, 'apkAssets')
87            )
88        }
89    }
90}
91
92androidComponents {
93    onVariants(selector().all().withBuildType("release"), { variant ->
94        artifacts {
95            apkAssets(variant.artifacts.get(SingleArtifact.APK.INSTANCE))
96        }
97    })
98}