Enable preloading of the appropriate WebView.
Allow the appropriate WebView to be preloaded in the zygote by
constructing the currently selected WebViewFactoryProvider when the
WebViewFactory is preloaded. At runtime, if the preloaded provider is
still the current selection, the preloaded instance is used, otherwise
the provider is loaded at that time.
This change also removes "graceful" fallback from the experimental
WebView to the classic implementation: if the option to use the
experimental WebView is selected and it could not be loaded
successfully at the time a WebView is created, an exception will be
thrown, rather than allowing execution to continue with the classic
implementation, as the fallback may mislead developers who do not
examine logcat output in detail.
Change-Id: I0cd01c784d7048abeac55ab5863ca16b8fd9ecf2
diff --git a/preloaded-classes b/preloaded-classes
index 2aa610a..45d27ee 100644
--- a/preloaded-classes
+++ b/preloaded-classes
@@ -1220,7 +1220,6 @@
android.webkit.HTML5VideoViewProxy
android.webkit.JWebCoreJavaBridge
android.webkit.JavascriptInterface
-android.webkit.JniUtil
android.webkit.L10nUtils
android.webkit.MockGeolocation
android.webkit.OverScrollGlow
@@ -1269,7 +1268,6 @@
android.webkit.WebViewClassic$TrustStorageListener
android.webkit.WebViewClassic$ViewSizeData
android.webkit.WebViewClient
-android.webkit.WebViewCore
android.webkit.WebViewCore$AutoFillData
android.webkit.WebViewCore$DrawData
android.webkit.WebViewCore$EventHub
@@ -1283,6 +1281,7 @@
android.webkit.WebViewDatabaseClassic
android.webkit.WebViewDatabaseClassic$1
android.webkit.WebViewFactory
+android.webkit.WebViewFactory$Preloader
android.webkit.WebViewFactoryProvider
android.webkit.WebViewFactoryProvider$Statics
android.webkit.WebViewInputDispatcher