在Android上处理与PhoneGap没有互联网连接

时间:2012-08-04 04:08:36

标签: android android-webview

我正在尝试检测用户是否在他们的Android设备上有互联网连接。如果他们没有互联网,我希望能够显示一个视图,其上有一个按钮,表示“重试”,就像Google Play应用商店一样。在使用下面的代码之前,我没有使用原生的android webview检测到信号,但我现在想找到一种方法来使用PhoneGap做同样的事情。此外,如果有人可以提供一些关于如何重新加载网页的示例代码,那就太棒了!

    webview.setWebViewClient(new WebViewClient() {
        public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
            Intent myIntent = new Intent(view.getContext(), LoadScreen.class);

            startActivity(myIntent);
            finish();
        }
    });

2 个答案:

答案 0 :(得分:2)

使用以下代码解决了这个问题:

public boolean isOnline() {
    ConnectivityManager cm =
        (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo netInfo = cm.getActiveNetworkInfo();
    if (netInfo != null && netInfo.isConnectedOrConnecting()) {
        return true;
    }
    return false;
}

答案 1 :(得分:0)

您可以测试navigator.online值以确定连接性:

https://developer.mozilla.org/en-US/docs/DOM/window.navigator.onLine