您好我尝试更改正常"没有互联网连接"从Android浏览器页面到我的webapp中的costum错误页面。在执行此操作时,我发现了这个link,并且答案是将错误页面绑定到我的活动中的良好解决方案。
此解决方案存在的问题是我的网址http://192.167.0.45/loc/index.php
不会被加载,只有在任何时间后文件myerrorpage.html
才会显示。我的网址如何加载而另一个网址只是在错误的情况下?看起来第二个mWebview.loadUrl
覆盖了第一个......
@Override
public void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.activity_localy);
mWebView = (WebView) findViewById(R.id.webview);
// Brower niceties -- pinch / zoom, follow links in place
mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
mWebView.setWebViewClient(new GeoWebViewClient());
// Below required for geolocation
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setGeolocationEnabled(true);
mWebView.setWebChromeClient(new GeoWebChromeClient());
// Load google.com
mWebView.loadUrl("http://192.167.0.45/loc/index.php");
super.onCreate(savedInstanceState); mWebView.setWebViewClient(new WebViewClient() {
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
mWebView.loadUrl("file:///android_asset/myerrorpage.html");
}
});
}
答案 0 :(得分:1)
看起来您无法加载您提供的网址,因此会跳转到onReceivedError方法,然后显示myerrorpage.html
。需要时间的原因是因为必须确认它无法与主机建立连接。