Enlarge / Someone really likes Google Chrome.
Google’s latest Chrome update gives users and developers of some Android apps a headache. Chrome 79, launched on desktop and mobile operating systems, has led to data loss on some other apparently unrelated Android apps. Thanks to this error, especially on Android, updating your browser can now do something like deleting the data in your finance app.
The connection between Chrome and Android app data may not be obvious, but Chrome on Android isn't always just the browser that starts when you click the Chrome icon. For some versions of Android, the Chrome app can also provide integrated HTML rendering for the entire operating system. Apps can invoke system rendering to display in-app web content (the API is called "WebView"). In this case, an instance of Chrome starts seamlessly and draws HTML content into your app. Regardless of whether you want to call them "HTML apps" or "Web wrappers," it's not uncommon for apps to be essentially just a WebView. These apps just turn on a website and load it. The web wrapper offers native Android features such as an app drawer icon, a full screen interface and a Play Store distribution. From a user's point of view, these apps mostly look like native apps and also function only with difficulty for technical users. However, cross-platform development is much easier if you use HTML because HTML code works everywhere.
The data loss is due to Google changing the location of profile data in Chrome 79 without fully migrating the old data. WebView-based apps can store data through APIs such as localstorage, WebSQL, and indexedDB, and apps that use these APIs suddenly find their data after the user has upgraded to Chrome 79. The data are not deleted, but only relocated. But there is no difference for a user. Your preferred HTML-based app is automatically reset to a newly installed status and your data is not displayed. By default, app updates on Android are carried out automatically and without user interaction, so that most users simply delete their app themselves and do not know why.
If you need technical information (and of course we also do), only Android versions 7, 8 and 9 use the "Chrome" app for system HTML rendering. Google has long supported the sensible attitude of updating the Android system's HTML renderer via the Play Store. However, it was switched back and forth whether using the Chrome app with user control for system HTML tasks is a good idea. Android 5 and 6 used a separate package called "Android System WebView" for web content, which comes very close to Chrome because it is based on the Chromium code base. After three versions of Chrome, Google returned to the specially developed Android System WebView app for the latest version, Android 10, and said that Android System WebView "should have fewer strange special cases and errors". In this case it would not have helped, since both Chrome 79 and Android System WebView 79 have this data loss. The point is that the web renderer app of the system in question changes depending on your Android version.