Avoid duplicate classes in boot path.
Switch to using libs to avoid loading the same class into the
boot path multiple times.
Bug: 309674488
Test: atest android.compat.sjp.cts.StrictJavaPackagesTest
Test: atest frameworks/base/services/tests/mockingservicestests/src/com/android/server/job
Test: atest frameworks/base/services/tests/servicestests/src/com/android/server/job
Test: atest CtsJobSchedulerTestCases:JobSchedulingTest
Test: atest CtsOsTestCases:PowerManagerTest
Test: atest PowerServiceTests:PowerManagerServiceTest
Change-Id: I4a00922aec9ae295da4480784088d18d0c6bf806
diff --git a/AconfigFlags.bp b/AconfigFlags.bp
index 3a772e1..a65a76b 100644
--- a/AconfigFlags.bp
+++ b/AconfigFlags.bp
@@ -58,7 +58,6 @@
":android.service.autofill.flags-aconfig-java{.generated_srcjars}",
":com.android.net.flags-aconfig-java{.generated_srcjars}",
":device_policy_aconfig_flags_lib{.generated_srcjars}",
- ":service-jobscheduler-deviceidle.flags-aconfig-java{.generated_srcjars}",
":surfaceflinger_flags_java_lib{.generated_srcjars}",
":android.view.contentcapture.flags-aconfig-java{.generated_srcjars}",
":android.hardware.usb.flags-aconfig-java{.generated_srcjars}",
diff --git a/apex/jobscheduler/service/Android.bp b/apex/jobscheduler/service/Android.bp
index 887f7fe..06518c4 100644
--- a/apex/jobscheduler/service/Android.bp
+++ b/apex/jobscheduler/service/Android.bp
@@ -13,10 +13,6 @@
name: "service-jobscheduler",
installable: true,
- defaults: [
- "service-jobscheduler-aconfig-libraries",
- ],
-
srcs: [
"java/**/*.java",
":framework-jobscheduler-shared-srcs",
@@ -27,6 +23,8 @@
"app-compat-annotations",
"framework",
"services.core",
+ "service-jobscheduler-deviceidle.flags-aconfig-java",
+ "service-jobscheduler-job.flags-aconfig-java",
"unsupportedappusage",
],
diff --git a/apex/jobscheduler/service/aconfig/Android.bp b/apex/jobscheduler/service/aconfig/Android.bp
index 7d8a363..3f4ab50 100644
--- a/apex/jobscheduler/service/aconfig/Android.bp
+++ b/apex/jobscheduler/service/aconfig/Android.bp
@@ -29,18 +29,3 @@
defaults: ["framework-minus-apex-aconfig-java-defaults"],
visibility: ["//frameworks/base:__subpackages__"],
}
-
-service_jobscheduler_aconfig_srcjars = [
- ":service-jobscheduler-deviceidle.flags-aconfig-java{.generated_srcjars}",
- ":service-jobscheduler-job.flags-aconfig-java{.generated_srcjars}",
-]
-
-// Aconfig declarations and libraries for the core framework
-java_defaults {
- name: "service-jobscheduler-aconfig-libraries",
- // Add java_aconfig_libraries to here to add them to the core framework
- srcs: service_jobscheduler_aconfig_srcjars,
- // Add aconfig-annotations-lib as a dependency for the optimization
- libs: ["aconfig-annotations-lib"],
- visibility: ["//frameworks/base:__subpackages__"],
-}
diff --git a/services/core/Android.bp b/services/core/Android.bp
index a14f3fe..09fe268 100644
--- a/services/core/Android.bp
+++ b/services/core/Android.bp
@@ -141,6 +141,7 @@
"service-rkp.stubs.system_server",
"service-sdksandbox.stubs.system_server",
"device_policy_aconfig_flags_lib",
+ "service-jobscheduler-deviceidle.flags-aconfig-java",
],
plugins: ["ImmutabilityAnnotationProcessor"],
diff --git a/services/tests/mockingservicestests/Android.bp b/services/tests/mockingservicestests/Android.bp
index 063af57..45cf66d 100644
--- a/services/tests/mockingservicestests/Android.bp
+++ b/services/tests/mockingservicestests/Android.bp
@@ -56,6 +56,7 @@
"platform-test-annotations",
"service-blobstore",
"service-jobscheduler",
+ "service-jobscheduler-job.flags-aconfig-java",
"service-permission.impl",
"service-sdksandbox.impl",
"services.backup",
diff --git a/services/tests/powerservicetests/Android.bp b/services/tests/powerservicetests/Android.bp
index 8d455fe..82ac4c6 100644
--- a/services/tests/powerservicetests/Android.bp
+++ b/services/tests/powerservicetests/Android.bp
@@ -15,6 +15,7 @@
"frameworks-base-testutils",
"platform-compat-test-rules",
"platform-test-annotations",
+ "service-jobscheduler-deviceidle.flags-aconfig-java",
"services.core",
"servicestests-utils",
"testables",