Stability is one of the cornerstones of user experience. When a single app crashes or malfunctions, it might frustrate some users who lose their progress or even some data. If a key system component were to crash, however, countless numbers of apps could become unusable for millions of users. This is exactly what’s happened in the past with the Android System WebView, the component that many apps rely on to render web content. Fortunately, Google plans to make WebView more resilient to crashes in Android 15 — here’s how.



Related

Here’s everything new we’ve found in Android 15

What we know about Android 15 now that the first developer preview has landed

For a bit of background, the Android System WebView is essentially a stripped down version of the Chromium web browser bundled with the Android operating system. Developers can use Android’s WebView API to get the WebView component to render a web page within the confines of their app. Some apps use WebView to render a single page, while others use it to essentially act as a mobile wrapper for an entire website. The impact of a WebView crash varies depending on the app; it could affect anything from a minor feature like a help page to the entire app failing to launch.


Android_System_WebView_demo

The Android System WebView component on an Android device (left, middle). An Android app that uses WebView (right).

Back in 2021, for example, we reported on a wave of mysterious app crashes that were affecting users of Samsung, Pixel, Motorola, OnePlus, and many smartphone brands. As we reported at the time, the crashes weren’t limited to any particular type of application; apps of all kinds, from many different developers, were crashing repeatedly and without warning. Google ended up fixing this issue by sending out an update to the WebView component.



Because the WebView component is so critical to app functionality, it’s updated through the Google Play Store instead of through OTA updates. This ensures that Google can quickly push out changes to address any bugs found in the WebView component, such as the one that caused the wave of crashes in mid-2021. It also ensures that most Android devices are running similar versions of WebView. If Google were to leave WebView updates in the hands of OEMs, then it could take weeks or even months for some devices to receive critical updates to the component.

As it turns out, though, Google actually already relies on OEMs to roll out updates to some parts of WebView. While updates to the core browser component have been handled by Google Play for years now, updates to the core framework APIs that apps use to integrate WebView are handled by OEMs. This is because Google currently doesn’t have a way to directly patch the code for the core WebView APIs. It currently has to just update the code in AOSP and then wait for OEMs to integrate it in their next release.



Related

What you need to know about Project Mainline in Android 14 and beyond

Project Mainline delivers key OS updates through Google Play — here’s how it’s changing

That’s why Google is working on a new Project Mainline module in Android 15 called WebViewBootstrap. Project Mainline is an initiative Google introduced with Android 10 that modularizes OS components so feature and security updates can be delivered through Google Play instead of through regular OTA updates. If you’ve ever seen a Google Play System Update pending on your Android device, that’s how Project Mainline modules are updated.

Although the public code repository for WebViewBootstrap is currently empty, we have an idea of what Google plans to do with this new module thanks to two sources. According to our sources, Google plans to move a bunch of code related to Android’s WebView API to this new WebViewBootstrap module. This includes code under the following directories:

  1. frameworks/base/core/java/android/webkit
  2. frameworks/base/services/core/java/com/android/server/webkit
  3. frameworks/base/native/webview



Google wants to move this code to the new WebViewBootstrap module so that it can update the code in emergency situations, such as when WebView is unable to start. Our sources tell us that Google only intends to push bug fixes through updates to the WebViewBootstrap module, so there won’t be any new functionality or API changes that developers will have to worry about. Supposedly, this module will also have some new “resilience” features that aim to automatically detect and repair when WebView is unable to start.

Apparently, the plan is for this new module to launch with Android 15. However, it may be optional for OEMs to include in their own builds, at least with the coming release. Instead, Google seemingly plans to make it mandatory in the following release, i.e., Android 16. The WebViewBootstrap module hasn’t appeared in the public Developer Preview 1 release of Android 15, but we’ll keep an eye out to see if it lands in Developer Preview 2.