Loading apex/jobscheduler/service/Android.bp +4 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,10 @@ java_library { name: "service-jobscheduler", installable: true, defaults: [ "service-jobscheduler-aconfig-libraries", ], srcs: [ "java/**/*.java", ":framework-jobscheduler-shared-srcs", Loading apex/jobscheduler/service/aconfig/Android.bp 0 → 100644 +29 −0 Original line number Diff line number Diff line // JobScheduler aconfig_declarations { name: "service-job.flags-aconfig", package: "com.android.server.job", srcs: [ "job.aconfig", ], } java_aconfig_library { name: "service-jobscheduler-job.flags-aconfig-java", aconfig_declarations: "service-job.flags-aconfig", defaults: ["framework-minus-apex-aconfig-java-defaults"], visibility: ["//frameworks/base:__subpackages__"], } service_jobscheduler_aconfig_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__"], } apex/jobscheduler/service/aconfig/job.aconfig 0 → 100644 +8 −0 Original line number Diff line number Diff line package: "com.android.server.job" flag { name: "relax_prefetch_connectivity_constraint_only_on_charger" namespace: "backstagepower" description: "Only relax a prefetch job's connectivity constraint when the device is charging" bug: "299329948" } No newline at end of file apex/jobscheduler/service/java/com/android/server/job/controllers/ConnectivityController.java +15 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ import static android.net.NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_MET import static com.android.server.job.JobSchedulerService.RESTRICTED_INDEX; import static com.android.server.job.JobSchedulerService.sElapsedRealtimeClock; import static com.android.server.job.Flags.FLAG_RELAX_PREFETCH_CONNECTIVITY_CONSTRAINT_ONLY_ON_CHARGER; import static com.android.server.job.Flags.relaxPrefetchConnectivityConstraintOnlyOnCharger; import android.annotation.NonNull; import android.annotation.Nullable; Loading Loading @@ -929,6 +931,11 @@ public final class ConnectivityController extends RestrictingController implemen // Need to at least know the estimated download bytes for a prefetch job. return false; } if (relaxPrefetchConnectivityConstraintOnlyOnCharger()) { if (!mService.isBatteryCharging()) { return false; } } // See if we match after relaxing any unmetered request final NetworkCapabilities.Builder builder = Loading Loading @@ -1735,6 +1742,14 @@ public final class ConnectivityController extends RestrictingController implemen Predicate<JobStatus> predicate) { final long nowElapsed = sElapsedRealtimeClock.millis(); pw.println("Aconfig flags:"); pw.increaseIndent(); pw.print(FLAG_RELAX_PREFETCH_CONNECTIVITY_CONSTRAINT_ONLY_ON_CHARGER, relaxPrefetchConnectivityConstraintOnlyOnCharger()); pw.println(); pw.decreaseIndent(); pw.println(); if (mRequestedWhitelistJobs.size() > 0) { pw.print("Requested standby exceptions:"); for (int i = 0; i < mRequestedWhitelistJobs.size(); i++) { Loading api/ApiDocs.bp +2 −0 Original line number Diff line number Diff line Loading @@ -195,6 +195,8 @@ framework_docs_only_args = " -android -manifest $(location :frameworks-base-core doc_defaults { name: "framework-docs-default", sdk_version: "none", system_modules: "none", libs: framework_docs_only_libs + [ "stub-annotations", "unsupportedappusage", Loading Loading
apex/jobscheduler/service/Android.bp +4 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,10 @@ java_library { name: "service-jobscheduler", installable: true, defaults: [ "service-jobscheduler-aconfig-libraries", ], srcs: [ "java/**/*.java", ":framework-jobscheduler-shared-srcs", Loading
apex/jobscheduler/service/aconfig/Android.bp 0 → 100644 +29 −0 Original line number Diff line number Diff line // JobScheduler aconfig_declarations { name: "service-job.flags-aconfig", package: "com.android.server.job", srcs: [ "job.aconfig", ], } java_aconfig_library { name: "service-jobscheduler-job.flags-aconfig-java", aconfig_declarations: "service-job.flags-aconfig", defaults: ["framework-minus-apex-aconfig-java-defaults"], visibility: ["//frameworks/base:__subpackages__"], } service_jobscheduler_aconfig_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__"], }
apex/jobscheduler/service/aconfig/job.aconfig 0 → 100644 +8 −0 Original line number Diff line number Diff line package: "com.android.server.job" flag { name: "relax_prefetch_connectivity_constraint_only_on_charger" namespace: "backstagepower" description: "Only relax a prefetch job's connectivity constraint when the device is charging" bug: "299329948" } No newline at end of file
apex/jobscheduler/service/java/com/android/server/job/controllers/ConnectivityController.java +15 −0 Original line number Diff line number Diff line Loading @@ -22,6 +22,8 @@ import static android.net.NetworkCapabilities.NET_CAPABILITY_TEMPORARILY_NOT_MET import static com.android.server.job.JobSchedulerService.RESTRICTED_INDEX; import static com.android.server.job.JobSchedulerService.sElapsedRealtimeClock; import static com.android.server.job.Flags.FLAG_RELAX_PREFETCH_CONNECTIVITY_CONSTRAINT_ONLY_ON_CHARGER; import static com.android.server.job.Flags.relaxPrefetchConnectivityConstraintOnlyOnCharger; import android.annotation.NonNull; import android.annotation.Nullable; Loading Loading @@ -929,6 +931,11 @@ public final class ConnectivityController extends RestrictingController implemen // Need to at least know the estimated download bytes for a prefetch job. return false; } if (relaxPrefetchConnectivityConstraintOnlyOnCharger()) { if (!mService.isBatteryCharging()) { return false; } } // See if we match after relaxing any unmetered request final NetworkCapabilities.Builder builder = Loading Loading @@ -1735,6 +1742,14 @@ public final class ConnectivityController extends RestrictingController implemen Predicate<JobStatus> predicate) { final long nowElapsed = sElapsedRealtimeClock.millis(); pw.println("Aconfig flags:"); pw.increaseIndent(); pw.print(FLAG_RELAX_PREFETCH_CONNECTIVITY_CONSTRAINT_ONLY_ON_CHARGER, relaxPrefetchConnectivityConstraintOnlyOnCharger()); pw.println(); pw.decreaseIndent(); pw.println(); if (mRequestedWhitelistJobs.size() > 0) { pw.print("Requested standby exceptions:"); for (int i = 0; i < mRequestedWhitelistJobs.size(); i++) { Loading
api/ApiDocs.bp +2 −0 Original line number Diff line number Diff line Loading @@ -195,6 +195,8 @@ framework_docs_only_args = " -android -manifest $(location :frameworks-base-core doc_defaults { name: "framework-docs-default", sdk_version: "none", system_modules: "none", libs: framework_docs_only_libs + [ "stub-annotations", "unsupportedappusage", Loading