blob: 24af2051f8bfb818d2027f8cfc87e963e629b8f2 [file] [log] [blame]
/*
* Copyright (C) 2023 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.BundleInsideHelper
import androidx.build.LibraryType
plugins {
id("AndroidXPlugin")
id("com.android.library")
id("org.jetbrains.kotlin.android")
}
BundleInsideHelper.forInsideAar(
project,
[
new BundleInsideHelper.Relocation(
/* from = */ "io.grpc.protobuf",
/* to = */ "androidx.appactions.interaction.grpc.protobuf"),
new BundleInsideHelper.Relocation(
/* from = */ "com.google.protobuf",
/* to = */ "androidx.appactions.interaction.protobuf")
],
// proto-lite dependency includes .proto files, which are not used and would clash if
// users also use proto library directly
/* dropResourcesWithSuffix = */ ".proto"
)
dependencies {
bundleInside(project(":appactions:interaction:interaction-service-proto"))
implementation(project(":appactions:interaction:interaction-capabilities-core"))
implementation("androidx.annotation:annotation:1.1.0")
implementation("androidx.concurrent:concurrent-futures:1.1.0")
implementation(libs.grpcAndroid)
implementation(libs.grpcBinder)
implementation(libs.grpcStub)
implementation(libs.kotlinCoroutinesCore)
implementation(libs.kotlinStdlib)
implementation(libs.jsr250)
// Force upgrade since 1.2.0 is not compatible with latest lint.
implementation("androidx.annotation:annotation-experimental:1.4.0")
testImplementation(project(":appactions:interaction:interaction-capabilities-core"))
testImplementation(project(":appactions:interaction:interaction-capabilities-testing"))
testImplementation(project(":appactions:interaction:interaction-service-proto"))
testImplementation(libs.grpcTesting)
testImplementation(libs.junit)
testImplementation(libs.kotlinCoroutinesTest)
testImplementation(libs.kotlinStdlib)
testImplementation(libs.kotlinTest)
testImplementation(libs.mockitoKotlin)
testImplementation(libs.protobufLite)
testImplementation(libs.robolectric)
testImplementation(libs.testExtJunit)
testImplementation(libs.testExtTruth)
testImplementation(libs.testCore)
testImplementation(libs.testRunner)
testImplementation(libs.truth)
testImplementation("androidx.concurrent:concurrent-futures-ktx:1.1.0")
}
android {
namespace "androidx.appactions.interaction.service"
defaultConfig {
minSdkVersion 26
}
defaultConfig {
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
testOptions {
unitTests {
includeAndroidResources = true
}
}
}
androidx {
name = "androidx.appactions.interaction:interaction-service"
type = LibraryType.PUBLISHED_LIBRARY
inceptionYear = "2023"
description = "Library for integrating with Google Assistant via GRPC binder channel."
metalavaK2UastEnabled = true
}