Create a android_library with all necessary dependencies
Bug: 270954160
Test: atest DeviceLockControllerRoboTests
Change-Id: I7fcbe03de40255b1ae12cd64b8fe1adc9d200016
diff --git a/DeviceLockController/Android.bp b/DeviceLockController/Android.bp
index 41b23a6..39639c0 100644
--- a/DeviceLockController/Android.bp
+++ b/DeviceLockController/Android.bp
@@ -32,18 +32,6 @@
}
filegroup {
- name: "devicelockcontroller-sources",
- srcs: [
- "src/**/*.java",
- ],
- exclude_srcs: [
- "src/com/android/devicelockcontroller/activities/*.java",
- "src/com/android/devicelockcontroller/util/*.java",
- "src/com/android/devicelockcontroller/provision/grpc/*.java",
- ],
-}
-
-filegroup {
name: "devicelockcontroller-activities-sources",
srcs: [
"src/com/android/devicelockcontroller/activities/*.java",
@@ -58,19 +46,38 @@
}
filegroup {
- name: "devicelockcontroller-grpc-sources",
+ name: "devicelockcontroller-grpc-interface-sources",
srcs: [
"src/com/android/devicelockcontroller/provision/grpc/*.java",
],
}
filegroup {
+ name: "devicelockcontroller-grpc-impl-sources",
+ srcs: [
+ "src/com/android/devicelockcontroller/provision/grpc/impl/*.java",
+ ],
+}
+
+filegroup {
name: "devicelockcontroller-aidl",
srcs: [
"src/**/*.aidl",
],
}
+filegroup {
+ name: "devicelockcontroller-sources",
+ srcs: [
+ "src/**/*.java",
+ ],
+ exclude_srcs: [
+ ":devicelockcontroller-activities-sources",
+ ":devicelockcontroller-util-sources",
+ ":devicelockcontroller-grpc-impl-sources",
+ ],
+}
+
android_library {
name: "devicelockcontroller-res-lib",
sdk_version: "module_current",
@@ -147,9 +154,9 @@
}
java_library {
- name: "devicelockcontroller-grpc-lib",
+ name: "devicelockcontroller-grpc-interface-lib",
srcs: [
- ":devicelockcontroller-grpc-sources",
+ ":devicelockcontroller-grpc-interface-sources",
],
sdk_version: "module_current",
min_sdk_version: "UpsideDownCake",
@@ -163,28 +170,29 @@
"opencensus-java-api",
"opencensus-java-contrib-grpc-metrics",
],
+ visibility: [
+ "//packages/modules/DeviceLock:__subpackages__",
+ "//vendor:__subpackages__",
+ ],
}
-android_app {
- name: "DeviceLockController",
+// Library with all dependencies for building DeviceLockController
+android_library {
+ name: "devicelockcontroller-lib",
sdk_version: "module_current",
min_sdk_version: "UpsideDownCake",
- updatable: true,
- privileged: true,
- certificate: "platform",
- rename_resources_package: false,
- required: ["privapp_allowlist_com.android.devicelockcontroller.xml"],
-
srcs: [":devicelockcontroller-sources"],
-
+ libs: [
+ "framework-tethering",
+ "org.apache.http.legacy",
+ ],
static_libs: [
"androidx.annotation_annotation",
"androidx.collection_collection",
"androidx.lifecycle_lifecycle-extensions",
"androidx.work_work-runtime",
"devicelockcontroller-activities-lib",
- "devicelockcontroller-grpc-lib",
- "devicelockcontroller-proto-lite",
+ "devicelockcontroller-grpc-interface-lib",
"devicelockcontroller-interface",
"devicelockcontroller-res-lib",
"devicelockcontroller-util-lib",
@@ -210,9 +218,31 @@
"jsr330",
"dagger2",
],
+ apex_available: [
+ "com.android.devicelock",
+ ],
+ visibility: [
+ "//packages/modules/DeviceLock:__subpackages__",
+ "//vendor:__subpackages__",
+ ],
+}
- libs: [
- "framework-tethering",
+android_app {
+ name: "DeviceLockController",
+ sdk_version: "module_current",
+ min_sdk_version: "UpsideDownCake",
+ updatable: true,
+ privileged: true,
+ certificate: "platform",
+ rename_resources_package: false,
+ required: ["privapp_allowlist_com.android.devicelockcontroller.xml"],
+
+ srcs: [":devicelockcontroller-grpc-impl-sources"],
+
+ static_libs: [
+ "devicelockcontroller-lib",
+ "devicelockcontroller-grpc-interface-lib",
+ "devicelockcontroller-proto-lite",
],
lint: {
diff --git a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/DeviceCheckInClient.java b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/DeviceCheckInClient.java
index 7ec7da8..c069172 100644
--- a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/DeviceCheckInClient.java
+++ b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/DeviceCheckInClient.java
@@ -16,7 +16,6 @@
package com.android.devicelockcontroller.provision.grpc;
-import android.content.Context;
import android.util.ArraySet;
import androidx.annotation.Nullable;
@@ -49,7 +48,7 @@
try {
Class<?> clazz = Class.forName(className);
return (DeviceCheckInClient) clazz.getDeclaredConstructor(
- Context.class, String.class)
+ String.class, Integer.TYPE, String.class)
.newInstance(hostName, portNumber, registeredId);
} catch (Exception e) {
throw new RuntimeException("Failed to get DeviceCheckInClient instance", e);
diff --git a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
index 8690576..b47f33e 100644
--- a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
+++ b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
@@ -18,6 +18,8 @@
import android.util.ArraySet;
+import androidx.annotation.Keep;
+
import com.android.devicelockcontroller.common.DeviceId;
import com.android.devicelockcontroller.common.DeviceLockConstants;
import com.android.devicelockcontroller.proto.ClientDeviceIdentifier;
@@ -42,10 +44,11 @@
* A client for the {@link com.android.devicelockcontroller.proto.DeviceLockCheckinServiceGrpc}
* service.
*/
-final class DeviceCheckInClientImpl extends DeviceCheckInClient {
+@Keep
+public final class DeviceCheckInClientImpl extends DeviceCheckInClient {
private final DeviceLockCheckinServiceBlockingStub mBlockingStub;
- DeviceCheckInClientImpl(String hostName, int portNumber, @Nullable String registeredId) {
+ public DeviceCheckInClientImpl(String hostName, int portNumber, @Nullable String registeredId) {
super(hostName, portNumber, registeredId);
mBlockingStub = DeviceLockCheckinServiceGrpc.newBlockingStub(
OkHttpChannelBuilder