使用Internet连接查询应用程序

时间:2011-08-31 06:28:03

标签: android

我有一个使用Internet连接的应用程序但是当没有可用的Internet连接时,应用程序停止响应。任何人都可以帮助我如何解决这个问题。我认为我可以在没有可用的互联网连接时显示错误,但我不知道如何做到这一点。

3 个答案:

答案 0 :(得分:5)

所需的许可是:

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> 

检查每个请求的互联网连接

public boolean isOnline() {
        NetworkInfo netInfo = connectivityManager.getActiveNetworkInfo();
        if (netInfo != null && netInfo.isConnectedOrConnecting()) {
            return true;
        }
        return false;
    }

使用上述方法

if(isOnline()) {
   //Write code of request
} else {
   showDialog("Internet connection error", "Connection is not available.")
}

显示对话框方法

private void showDialog(String title, String text) {
        // Access denied. Show dialogue to user
        AlertDialog.Builder alertbox = new AlertDialog.Builder(YOUR_ACTIVITY.this);
        alertbox.setTitle(title);
        alertbox.setIcon(android.R.drawable.ic_dialog_info);
        alertbox.setMessage(text);
        alertbox.setNeutralButton("OK", new DialogInterface.OnClickListener() {
            public void onClick(DialogInterface arg0, int arg1) {
                //finish(); //DO nothing
            }
        });
        alertbox.show();
    }

已修改 : 将YOUR_ACTIVITY.this替换为您正在使用此代码的活动名称。

答案 1 :(得分:1)

您可以显示AlertDialog以向用户显示没有互联网连接。如果您的应用程序无法连接,在点击AlertDialog中的取消按钮后,您可以完成您的活动并关闭应用

答案 2 :(得分:0)

查看我的HTTPclass.java类,我是如何做到的,我有一个方法connect(url),它接受一个url字符串并连接它,如果收到连接,它会响应并提供responseCode = 200或{ {1}},如果连接没有连接,我会处理一个catch块并设置HTTP.OK,这意味着它没有连接。

所以,你只能这样做。当responsecode为-1时,您可以显示“Internet Not Connected”的消息。

responseCode = -1