如何在Android中的应用启动中检查互联网是否可用?

cap*_*oid 7 android connectivity

我的应用程序首先从互联网加载数据(我正在使用webservice)我想在应用启动时检查互联网访问.

  1. 我想检查3G或WIFI或GPRS或其他任何形式的互联网是否可用.
  2. 如果不可用,请向用户发送消息,例如" 您需要访问互联网 "并退出应用程序.(目前我的应用程序中有强制关闭错误,如果没有互联网访问)
  3. 如果可用,请正常启动我的应用程序.
  4. 此外,我的应用程序是在不同阶段从webservice获取数据,在每个阶段或操作之前,我想首先检查互联网访问.

我该怎么做呢 ?

dre*_*der 7

你可以使用我的方法:

public static boolean isNetworkAvailable(Context context) 
{
    ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);

    if (connectivity != null) 
    {
        NetworkInfo[] info = connectivity.getAllNetworkInfo();

        if (info != null) 
        {
            for (int i = 0; i < info.length; i++) 
            {
                Log.i("Class", info[i].getState().toString());
                if (info[i].getState() == NetworkInfo.State.CONNECTED) 
                {
                    return true;
                }
            }
        }
    }
    return false;
}
Run Code Online (Sandbox Code Playgroud)