| Index: android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
|
| diff --git a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
|
| index 13a9b0fd3e663c392200019121fbeca7ab63e8a3..8770d3a777725d80ca9e4cd8be905d9fa0410ee8 100644
|
| --- a/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
|
| +++ b/android_webview/glue/java/src/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
|
| @@ -4,15 +4,18 @@
|
|
|
| package com.android.webview.chromium;
|
|
|
| +import android.Manifest;
|
| import android.app.ActivityManager;
|
| import android.content.ComponentCallbacks2;
|
| import android.content.Context;
|
| import android.content.Intent;
|
| import android.content.SharedPreferences;
|
| import android.content.pm.PackageInfo;
|
| +import android.content.pm.PackageManager;
|
| import android.net.Uri;
|
| import android.os.Build;
|
| import android.os.Looper;
|
| +import android.os.Process;
|
| import android.os.StrictMode;
|
| import android.util.Log;
|
| import android.webkit.CookieManager;
|
| @@ -34,6 +37,7 @@ import org.chromium.android_webview.AwContentsStatics;
|
| import org.chromium.android_webview.AwCookieManager;
|
| import org.chromium.android_webview.AwDataReductionProxyManager;
|
| import org.chromium.android_webview.AwDevToolsServer;
|
| +import org.chromium.android_webview.AwNetworkChangeNotifierRegistrationPolicy;
|
| import org.chromium.android_webview.AwQuotaManagerBridge;
|
| import org.chromium.android_webview.AwResource;
|
| import org.chromium.android_webview.AwSettings;
|
| @@ -50,6 +54,7 @@ import org.chromium.base.library_loader.LibraryLoader;
|
| import org.chromium.base.library_loader.LibraryProcessType;
|
| import org.chromium.base.library_loader.ProcessInitException;
|
| import org.chromium.content.browser.ContentViewStatics;
|
| +import org.chromium.net.NetworkChangeNotifier;
|
| import org.chromium.ui.base.ResourceBundle;
|
|
|
| import java.io.File;
|
| @@ -171,6 +176,15 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
|
| AwContents.setAwDrawGLFunctionTable(GraphicsUtils.getDrawGLFunctionTable());
|
| }
|
|
|
| + private void initNetworkChangeNotifier(Context applicationContext) {
|
| + if (applicationContext.checkPermission(Manifest.permission.ACCESS_NETWORK_STATE,
|
| + Process.myPid(), Process.myUid()) == PackageManager.PERMISSION_GRANTED) {
|
| + NetworkChangeNotifier.init(applicationContext);
|
| + NetworkChangeNotifier.setAutoDetectConnectivityState(
|
| + new AwNetworkChangeNotifierRegistrationPolicy());
|
| + }
|
| + }
|
| +
|
| private void ensureChromiumStartedLocked(boolean onMainThread) {
|
| assert Thread.holdsLock(mLock);
|
|
|
| @@ -241,6 +255,7 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
|
| setUpResources(webViewPackageName, context);
|
| ResourceBundle.initializeLocalePaks(context, R.array.locale_paks);
|
| initPlatSupportLibrary();
|
| + initNetworkChangeNotifier(context);
|
| final int extraBindFlags = 0;
|
| AwBrowserProcess.configureChildProcessLauncher(webViewPackageName, extraBindFlags);
|
| AwBrowserProcess.start(context);
|
|
|