
Android 11 package visibility rules mean that HTMLViewer cannot access LicenseContentProvider by default, even though the content provider does not require a permission, because that would reveal the existence of the package to it. To fix this, explicitly grant URI access permission in the intent used to invoke HTMLViewer - while actual permission is not necessary, this also implicitly grants HTMLViewer the right to "see" the WebView package. Note that in most circumstances this was already working without this change: when an app uses WebView, the platform grants the app visibility of the current WebView implementation package as a side effect (so that it can load the code), so as long as the LicenseActivity belonged to the current WebView there wasn't an issue. This change is only required for the case where you launch the LicenseActivity for a *different* WebView implementation. Change-Id: I7bab033c05d386039c55799328fe0163bc4906ec Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2404364 Commit-Queue: Richard Coles <torne@chromium.org> Auto-Submit: Richard Coles <torne@chromium.org> Reviewed-by: Nate Fischer <ntfschr@chromium.org> Cr-Commit-Position: refs/heads/master@{#805917}
Android WebView
Android WebView is an Android system component for displaying web content.
WebView (and
the related Android classes) are implemented by the code in the
//android_webview/
folder.
This directory contains the Android WebView implementation, as well as the implementation for the AndroidX Webkit support library.
Overview for Chromium team members and contributors
Please see WebView Architecture.
Want to use WebView in an Android app?
Please consult our API documentation and app development guides:
Want to build and install WebView on a device?
See our Chromium developer documentation.