Google introduced Project Mainline as part of Android 10, to turn some of Android into modular components that could be updated through the Play Store. Several more parts of the system were converted to Mainline modules with Android 11, and now another core Android component is expected to become modular next year.

New comments on the Android Open Source Project (AOSP) code repository reveal that the Android Runtime is expected to become a Project Mainline module, starting with Android 12. The runtime, also known as 'ART,' is the environment used for running all applications on Android with ahead-of-time (AOT) compilation. You long-term Android nerds out there might remember that ART became the new default runtime in Android Lollipop, replacing the 'Dalvik' engine that Oracle is still suing Google over.

One comment from Google software engineer Orion Hodson spells out that ART will be a Mainline module in Android 12:

Sorry, this CL should have come with more explanation. In Android S, ART becomes an updatable Mainline module. In the module there is a program called odrefresh which recompiles the parts of the boot class path that are not in the ART apex themselves (e.g. frameworks.jar) and the system server jars. There is also a component called ods (http://ag/12685324) which signs the artifacts and checks their signatures on subsequent boots. ods drives odrefresh to check the artifacts for existence and freshness and to recompile if necessary.

Android is still a long way from the fully-modular design that would allow most security patches to roll out through the Play Store alone, but converting the app runtime to an individual component could have significant ramifications. It could give Google more direct control over how Android apps work on third-party devices, possibly undoing the drastic changes some OEMs implement that cause issues like missed notifications.

Via: Mishaal Rahman (Twitter)

Source: AOSP