History log of /frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
1c177d8dae45e72a4709cd023415d98544e756a3 29-Mar-2016 Gustav Sennton <gsennton@google.com> Add system api to reach WebViewUpdateService Binder interface.

Instead of using reflection in XTS tests we add some system-apis to
enable fetching information about webview packages.

Bug: 26381867
Change-Id: If983a01b6855e4a4c08ef0b5873304918d499b76
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
dbf5eb04e6793651193cec59ff6b8cb0c6ca2f78 30-Mar-2016 Gustav Sennton <gsennton@google.com> Simplify WebViewProviderInfo - move its logic into WebViewUpdateService.

The WebViewProviderInfo should now be ready to be added as an API to be
fetched from XTS tests (to avoid using reflection).

Move the logic for validation, signature checking and package info
fetching out of WebViewProviderInfo so that we can mock the coupling
between that logic and the system (e.g. the package manager).

Note: with this patch we stop caching valid webview packages in the
update service (we would still refetch them anyway when anything
important happened).

Bug: 27635535
Bug: 27736084

Change-Id: Ia455202d2fd5bc4e03dce0fd917d262bf942d1a3
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
8b17926a78cc686504739730516c9b057d0672da 14-Mar-2016 Gustav Sennton <gsennton@google.com> Add utility interface for WebView preparation logic.

To make the WebView preparation mechanism testable we add a utility
interface that can be overridden during a test to avoid calling the
Android framework and to provide custom WebView packages.

With this change we also split some of the code from the WebViewFactory
(code unrelated to WebView loading) into a separate utility class.

Bug: 27635535
Change-Id: I265ecd42b24ad5383637e125b3654ff339c9df9c
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
c83e3fa35a5736a1778d241abd18dffa5953f416 18-Feb-2016 Gustav Sennton <gsennton@google.com> Add fallback packages to be enabled iff no webview packages are valid

This patch makes it possible to declare a WebView package as a fallback
which means that the package will be enabled iff there exist no other
valid and enabled (and available-by-default) webview packages.

The enabled-state of a fallback package is updated at boot and if a
webview package is changed (it it's been up/downgraded or has had its
enabled-state changed).

This patch also adds 'webviewupdate' shell commands for enabling and
disabling this mechanism.

Bug: 26375524, 26375860
Change-Id: I151915e5d6d932697dab10aeb593687e6b9c817e
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
14c033c76b00fa1f59c4198e0e50f07387a0f3e9 11-Feb-2016 Gustav Sennton <gsennton@google.com> Move current WebView provider from Settings.Secure to Settings.Global

The current WebView provider is not user-specific and should therefore
be stored as a Global rather than a Secure setting.

Also do some code cleaning including a fix in WebViewProviderInfo to
always fetch up-to-date information about whether a webview
implementation package is enabled.

Bug: 27142972
Change-Id: I4d4b8fca775e97980fb5c34313be6d82472e7d33
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
1075d812f6d8a0058371f2aecafe38f8706b6374 11-Jan-2016 Gustav Sennton <gsennton@google.com> Merge "Fix WebView loading logic to allow changing provider if current disabled"
c5967e9862489024c932b0c7fcb84ed0af2a7fd7 08-Jan-2016 Jeff Sharkey <jsharkey@android.com> More progress on triaging PackageManager callers.

Catch a bunch of simple cases where the PackageManager flags are
obvious. Add the ability to use the MATCH_SYSTEM_ONLY flag on
PackageInfo and ApplicationInfo queries.

Re-examine recent tasks after a user is unlocked, since some of the
activities may now be available and runnable.

Bug: 26471205, 26253870
Change-Id: I989d9f8409070e5cae13202b47e2c7de85bf4a5b
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
27f13de12bc73aed4328866ffa9fb9c394b72f7e 05-Jan-2016 Gustav Sennton <gsennton@google.com> Fix WebView loading logic to allow changing provider if current disabled

Add an XML tag declaring whether a package can be used without
explicitly being chosen by the user (it is available-by-default).

Change the WebView loading logic to either
1. load a user-chosen and enabled package or
2. load an enabled and available-by-default package or
3. any package that is valid

Bug: 26400585
Change-Id: I8de253c1687e3cc7961184c2d770d4e385d6187a
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
5c2454cde182118a3619e905b8add2c21e14070d 17-Dec-2015 Gustav Sennton <gsennton@google.com> Allow several valid signatures per WebView provider.

If one of the signatures match the package signature the package is
considered valid. This makes it possible to match signatures in user
builds for both signed and unsigned builds.

Bug: 26220882

Change-Id: Ie2e7567bf518d4859d68b5fdf5b9833fcdaa7670
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java
6258dcd7ea5450726bc7bcb1fbd50e99f62f38fb 30-Oct-2015 Gustav Sennton <gsennton@google.com> Add functionality for changing WebView provider.

Make it possible to change WebView provider (through a Developer
setting) and kill all apps using the old provider.
This includes checking the signatures of the WebView providers to make
sure they are valid.

Now that we can change WebView provider through a setting it is possible
to change provider while some provider is being updated. Because of this
we now keep track of which provider should be in use in
WebViewUpdateService to make sure we use the correct provider at all
times.

We now also read WebView package meta data (name, package name, and
signature) from a separate xml file.

Main bug: crbug.com/546185

Bug: 25338573

Change-Id: I660fd1a40a5388f6569a06a7f0d029e8ff65945a
/frameworks/base/core/java/android/webkit/WebViewProviderInfo.java