Rename appfunctions-runtime to appfunctions-service
This is part of the package restructuring process for AppFunctions
Jetpack. The goal is to make a layered structure for developers to start
from any layer depends on their requirements. And also make sure the
package name matches the module name.
appfunctions-service module would be the module that helps to expose
AppFunctions with Jetpack defined AppFunctions runtime.
Relnote: N/A
Bug: 408453192
Test: Integration tests
Change-Id: I30da74353e9525f86f5fb27a02432d8604c96ee2
diff --git a/appfunctions/appfunctions-service/build.gradle b/appfunctions/appfunctions-service/build.gradle
new file mode 100644
index 0000000..9290ccd
--- /dev/null
+++ b/appfunctions/appfunctions-service/build.gradle
@@ -0,0 +1,88 @@
+/*
+ * Copyright (C) 2025 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 file was created using the `create_project.py` script located in the
+ * `<AndroidX root>/development/project-creator` directory.
+ *
+ * Please use that script when creating a new project, rather than copying an existing project and
+ * modifying its settings.
+ */
+
+import androidx.build.KotlinTarget
+import androidx.build.SoftwareType
+
+plugins {
+ id("AndroidXPlugin")
+ id("com.android.library")
+ id("org.jetbrains.kotlin.android")
+}
+
+dependencies {
+ api(libs.kotlinStdlib)
+ api(libs.kotlinCoroutinesAndroid)
+ api project(":appfunctions:appfunctions")
+
+ // Internal dependencies
+ implementation("androidx.appsearch:appsearch:1.1.0-beta01")
+ implementation("androidx.appsearch:appsearch-platform-storage:1.1.0-beta01")
+ implementation("androidx.annotation:annotation:1.9.0-rc01")
+ implementation(libs.kotlinCoroutinesGuava) {
+ exclude group: "com.google.guava", module: "guava"
+ }
+ // Compile only dependencies
+ compileOnly(project(":appfunctions:appfunctions-stubs"))
+
+ // Test dependencies
+ testImplementation(libs.junit)
+ testImplementation(libs.truth)
+ testImplementation(libs.testMonitor)
+ testImplementation(libs.kotlinCoroutinesTest)
+ testImplementation(libs.testRunner)
+ testImplementation(project(":appfunctions:appfunctions-stubs"))
+ testImplementation(libs.mockitoCore)
+ testImplementation(libs.testCore)
+ testImplementation(libs.robolectric)
+ testImplementation(libs.kotlinTest)
+
+ androidTestCompileOnly(project(":appfunctions:appfunctions-stubs"))
+ androidTestImplementation("androidx.appsearch:appsearch:1.1.0-beta01")
+ androidTestImplementation("androidx.appsearch:appsearch-platform-storage:1.1.0-beta01")
+ androidTestImplementation(libs.junit)
+ androidTestImplementation(libs.truth)
+ androidTestImplementation(libs.kotlinCoroutinesTest)
+ androidTestImplementation(libs.testParameterInjector)
+ androidTestImplementation('androidx.concurrent:concurrent-futures-ktx:1.1.0')
+ androidTestImplementation(libs.guavaAndroid)
+ androidTestImplementation(libs.testMonitor)
+ androidTestImplementation(libs.testRunner)
+ androidTestImplementation(libs.kotlinTest)
+}
+
+android {
+ compileSdk = 36
+ buildTypes.configureEach {
+ consumerProguardFiles "proguard-rules.pro"
+ }
+ namespace = "androidx.appfunctions.service"
+}
+
+androidx {
+ name = "androidx.appfunctions:appfunctions-service"
+ type = SoftwareType.PUBLISHED_LIBRARY
+ inceptionYear = "2025"
+ description = "A runtime library for the app to expose AppFunctions"
+}