From 3d9bcc066f75ec2b4de868df5d5864cceb8024c5 Mon Sep 17 00:00:00 2001 From: "Torne (Richard Coles)" Date: Fri, 2 May 2014 15:21:54 +0100 Subject: [PATCH] Remove WebView library preloading mechanism. We don't want to preload the WebView library in the zygote process any more, as loading an updatable WebView in the zygote is a stability risk. The memory benefits of preloading will be obtained in other ways. Bug: 13005501 Change-Id: Ic89f2a1d057dc92b01fb775bf326b47ac2d4caa2 --- core/java/android/webkit/WebViewFactory.java | 20 -------------------- preloaded-classes | 1 - 2 files changed, 21 deletions(-) diff --git a/core/java/android/webkit/WebViewFactory.java b/core/java/android/webkit/WebViewFactory.java index b9131bf3d8da1..f694c2f03bf23 100644 --- a/core/java/android/webkit/WebViewFactory.java +++ b/core/java/android/webkit/WebViewFactory.java @@ -36,17 +36,6 @@ public final class WebViewFactory { private static final boolean DEBUG = false; - private static class Preloader { - static WebViewFactoryProvider sPreloadedProvider; - static { - try { - sPreloadedProvider = getFactoryClass().newInstance(); - } catch (Exception e) { - Log.w(LOGTAG, "error preloading provider", e); - } - } - } - // Cache the factory both for efficiency, and ensure any one process gets all webviews from the // same provider. private static WebViewFactoryProvider sProviderInstance; @@ -88,15 +77,6 @@ public final class WebViewFactory { throw new AndroidRuntimeException(e); } - // This implicitly loads Preloader even if it wasn't preloaded at boot. - if (Preloader.sPreloadedProvider != null && - Preloader.sPreloadedProvider.getClass() == providerClass) { - sProviderInstance = Preloader.sPreloadedProvider; - if (DEBUG) Log.v(LOGTAG, "Using preloaded provider: " + sProviderInstance); - return sProviderInstance; - } - - // The preloaded provider isn't the one we wanted; construct our own. StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads(); try { sProviderInstance = providerClass.newInstance(); diff --git a/preloaded-classes b/preloaded-classes index b60a379cbc6f1..268276fb01a1e 100644 --- a/preloaded-classes +++ b/preloaded-classes @@ -1222,7 +1222,6 @@ android.webkit.WebView$PrivateAccess android.webkit.WebViewClient android.webkit.WebViewDatabase android.webkit.WebViewFactory -android.webkit.WebViewFactory$Preloader android.webkit.WebViewFactoryProvider android.webkit.WebViewFactoryProvider$Statics android.webkit.WebViewProvider