For users who choose to share usage statistics and diagnostics with Google, WebView sends usage statistics and crash reports to Google. Usage statistics contain information such as system information, active field trials, feature usage, responsiveness, performance, and memory usage. They do not include any personally identifying details.
Collected usage statistics are used to improve WebView performance and to assess the impact of changes to existing features and guide the development of new features.
The stable channel of WebView gathers usage statistics from a small percentage of users. Pre-stable channels might sample from a greater percentage of users.
Starting with WebView 71, these statistics are associated with the app package name. This enables Google to proactively monitor and address WebView issues that may degrade the performance of specific apps without causing crashes. For any given app, at most 10% of users will upload reports containing the package name. Other users will upload blank package names or not upload records at all.
Crash reports are collected when a
WebView object is likely to be the cause of the
crash. Crash reports contain information required to determine the state of
WebView at the time of the crash. This includes system information, active field
trials and stack memory from the app required to generate the sequence
of calls made within thread.
Stack memory is sanitized to remove strings, with the intent of capturing only the information required to generate stack traces. No URLs are collected as part of usage statistics or crash reports.
Apps may opt out of usage statistics collection by including the
following in the
<application> section of their manifest:
<meta-data android:name="android.webkit.WebView.MetricsOptOut" android:value="true" />
This disables usage statistics collection for all users of the app, regardless of whether or not they have the corresponding setting enabled. It does not disable crash reporting.
Pseudonymous identifiers and data privacy
Crash reports and usage statistics collected by WebView each contain a randomly generated 128-bit token used to pseudonymously de-duplicate reports and maintain accuracy in statistics. Token values are not shared between apps, and crash reports and usage statistics have independent tokens. All apps' usage statistics tokens are cleared when the user opts out of sharing usage statistics and diagnostics with Google is disabled. The crash report token is cleared when the app cache is cleared. Both tokens are cleared when the app is uninstalled or app data is cleared.
To learn more about user privacy, see Build privacy-friendly apps.