| /* |
| * Copyright (C) 2020 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. |
| */ |
| |
| import androidx.build.LibraryGroups |
| import androidx.build.LibraryType |
| import androidx.build.LibraryVersions |
| |
| import static androidx.build.dependencies.DependenciesKt.* |
| |
| plugins { |
| id("AndroidXPlugin") |
| id("com.android.library") |
| } |
| |
| dependencies { |
| implementation("androidx.activity:activity:1.1.0") |
| implementation("androidx.annotation:annotation:1.2.0") |
| implementation("androidx.core:core:1.3.0") |
| implementation("androidx.lifecycle:lifecycle-viewmodel:2.2.0") |
| // Session and Screen both implement LifeCycleOwner so this needs to be exposed. |
| api("androidx.lifecycle:lifecycle-common-java8:2.2.0") |
| implementation("androidx.annotation:annotation-experimental:1.1.0") |
| compileOnly KOTLIN_STDLIB // Due to :annotation-experimental |
| |
| annotationProcessor(NULLAWAY) |
| |
| // TODO(shiufai): We need this for assertThrows. Point back to the AndroidX shared version if |
| // it is ever upgraded. |
| testImplementation("junit:junit:4.13") |
| testImplementation(ANDROIDX_TEST_CORE) |
| testImplementation(ANDROIDX_TEST_RUNNER) |
| testImplementation(JUNIT) |
| testImplementation(MOCKITO_CORE) |
| testImplementation(ROBOLECTRIC) |
| testImplementation(TRUTH) |
| testImplementation project(path: ':car:app:app-testing') |
| } |
| |
| android { |
| defaultConfig { |
| minSdkVersion 23 |
| multiDexEnabled = true |
| testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" |
| } |
| lintOptions { |
| // We rely on keeping a bunch of private variables in the library for serialization. |
| disable("BanKeepAnnotation") |
| } |
| buildFeatures { |
| aidl = true |
| } |
| buildTypes.all { |
| consumerProguardFiles "proguard-rules.pro" |
| } |
| |
| testOptions.unitTests.includeAndroidResources = true |
| } |
| |
| androidx { |
| name = "Android for Cars App Library" |
| type = LibraryType.PUBLISHED_LIBRARY |
| mavenGroup = LibraryGroups.CAR_APP |
| inceptionYear = "2020" |
| description = "Build navigation, parking, and charging apps for Android Auto" |
| } |