I'm struggle with a strange issue. I'm trying to load a https web page, but the first time the webview doesn't load. After wait 60 seconds, I have to click again in my button to load my page. My device is a Nexus 4 with Lollipop, but this issue happens at devices with Android 4.4 and 4.1 as well. The URL doesn't have heavy content only a few javascript files and css files.
Log:
I/WebViewFactory﹕ Loading com.google.android.webview version 37 (1602158-arm) (code 111201)
I/LibraryLoader﹕ Loading: webviewchromium
I/LibraryLoader﹕ Time to load native libraries: 3 ms (timestamps 5331-5334)
I/LibraryLoader﹕ Expected native library version number "",actual native library version number ""
I/LibraryLoader﹕ Expected native library version number "",actual native library version number ""
I/chromium﹕ [INFO:library_loader_hooks.cc(106)] Chromium logging enabled: level = 0, default verbosity = 0
I/BrowserStartupController﹕ Initializing chromium process, renderers=0
W/art﹕ Attempt to remove local handle scope entry from IRT, ignoring
W/chromium﹕ [WARNING:resource_bundle.cc(315)] locale_file_path.empty()
I/chromium﹕ [INFO:aw_browser_main_parts.cc(63)] Load from apk succesful, fd=72 off=159196 len=3264
I/chromium﹕ [INFO:aw_browser_main_parts.cc(78)] Loading webviewchromium.pak from, fd:73 off:229484 len:643667
W/AudioManagerAndroid﹕ Requires BLUETOOTH permission
W/chromium﹕ [WARNING:proxy_service.cc(901)] PAC support disabled because there is no system implementation
W/chromium﹕ [WARNING:data_reduction_proxy_settings.cc(403)] SPDY proxy OFF at startup
W/art﹕ Attempt to remove local handle scope entry from IRT, ignoring
W/AwContents﹕ onDetachedFromWindow called when already detached. Ignoring
I/chromium﹕ [INFO:SkUtilsArm.cpp(179)] Device supports ARM NEON instructions!
My code:
final WebView wv = (WebView) alert.findViewById(R.id.modal_wv);
wv.getSettings().setAppCacheEnabled(true);
wv.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
wv.getSettings().setAppCachePath("/data/data/" + getPackageName() + "/cache");
wv.getSettings().setAllowFileAccess(true);
wv.getSettings().setJavaScriptEnabled(true);
wv.loadUrl(connectionResponse.getUrl());
/*
//Same behavior ...
wv.post(new Runnable() {
@Override
public void run() {
wv.loadUrl(connectionResponse.getUrl());
}
});
*/
I set a new WebClient() overriding the following methods: shouldOverrideUrlLoading, onLoadResource, onPageFinished.For tests purpose, I removed this custom WebClient but it still wasn't load at the first time.
Thanks
Best Solution
I met the same issue. I spent more than 3 days and found the cause it that another WebView object calls pauseTimers() for saving some CPU performance which actually " Pauses all layout, parsing, and JavaScript timers for all WebViews."