xref: /aosp_15_r20/frameworks/base/apex/jobscheduler/README_js-mainline.md (revision d57664e9bc4670b3ecf6748a746a57c557b6bc9e)
1*d57664e9SAndroid Build Coastguard Worker# Making Job Scheduler into a Mainline Module
2*d57664e9SAndroid Build Coastguard Worker
3*d57664e9SAndroid Build Coastguard Worker## Current structure
4*d57664e9SAndroid Build Coastguard Worker
5*d57664e9SAndroid Build Coastguard Worker- JS service side classes are put in `service-jobscheduler.jar`.
6*d57664e9SAndroid Build Coastguard WorkerIt's *not* included in services.jar, and instead it's put in the system server classpath,
7*d57664e9SAndroid Build Coastguard Workerwhich currently looks like the following:
8*d57664e9SAndroid Build Coastguard Worker`SYSTEMSERVERCLASSPATH=/system/framework/services.jar:/system/framework/ethernet-service.jar:/system/framework/com.android.location.provider.jar:/system/framework/service-jobscheduler.jar`
9*d57664e9SAndroid Build Coastguard Worker
10*d57664e9SAndroid Build Coastguard Worker  `SYSTEMSERVERCLASSPATH` is generated from `PRODUCT_SYSTEM_SERVER_JARS`.
11*d57664e9SAndroid Build Coastguard Worker
12*d57664e9SAndroid Build Coastguard Worker- JS framework side classes are put in `framework-jobscheduler.jar`,
13*d57664e9SAndroid Build Coastguard Workerand the rest of the framework code is put in `framework-minus-apex.jar`,
14*d57664e9SAndroid Build Coastguard Workeras of http://ag/9145619.
15*d57664e9SAndroid Build Coastguard Worker
16*d57664e9SAndroid Build Coastguard Worker  However these jar files are *not* put on the device. We still generate
17*d57664e9SAndroid Build Coastguard Worker  `framework.jar` merging the two jar files, and this jar file is what's
18*d57664e9SAndroid Build Coastguard Worker  put on the device and loaded by Zygote.
19*d57664e9SAndroid Build Coastguard Worker
20*d57664e9SAndroid Build Coastguard WorkerThe current structure is *not* the final design.
21