Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android互联网连接代码_Android - Fatal编程技术网

Android互联网连接代码

Android互联网连接代码,android,Android,我正在开发一个应用程序。场景是:我的Android设备显示已连接到互联网,但该设备无法访问互联网。在我的应用程序中,我使用以下代码检查internet连接: private boolean isNetworkAvailable() { ConnectivityManager connectivityManager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); N

我正在开发一个应用程序。场景是:我的Android设备显示已连接到互联网,但该设备无法访问互联网。在我的应用程序中,我使用以下代码检查internet连接:

private boolean isNetworkAvailable() {
    ConnectivityManager connectivityManager 
          = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
    return activeNetworkInfo != null && activeNetworkInfo.isConnected();
}


<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
但每次它在我上面解释的场景中崩溃时。任何帮助都将不胜感激

谢谢

试试这段代码

public boolean isConnected(){
        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++)
                      if (info[i].getState() == NetworkInfo.State.CONNECTED)
                      {
                          return true;
                      }

          }
          return false;
    }
试试这个代码

public boolean isConnected(){
        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++)
                      if (info[i].getState() == NetworkInfo.State.CONNECTED)
                      {
                          return true;
                      }

          }
          return false;
    }

我写了这个方法来处理这个问题

public boolean isOnline(Context con) {
        try {
            connectivityManager = (ConnectivityManager) con
                        .getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
        connected = networkInfo != null && networkInfo.isAvailable() &&
                networkInfo.isConnected();
        return connected;


        } catch (Exception e) {
            System.out.println("CheckConnectivity Exception: " + e.getMessage());
            Log.v("connectivity", e.toString());
        }
        return connected;
    }
并将这些权限添加到清单文件

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

我写了这个方法来处理这个问题

public boolean isOnline(Context con) {
        try {
            connectivityManager = (ConnectivityManager) con
                        .getSystemService(Context.CONNECTIVITY_SERVICE);

        NetworkInfo networkInfo = connectivityManager.getActiveNetworkInfo();
        connected = networkInfo != null && networkInfo.isAvailable() &&
                networkInfo.isConnected();
        return connected;


        } catch (Exception e) {
            System.out.println("CheckConnectivity Exception: " + e.getMessage());
            Log.v("connectivity", e.toString());
        }
        return connected;
    }
并将这些权限添加到清单文件

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
用这个

公共静态布尔值isInternetOnContext上下文{

    ConnectivityManager cm = (ConnectivityManager) context
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    // test for connection
    if (cm.getActiveNetworkInfo() != null
            && cm.getActiveNetworkInfo().isAvailable()
            && cm.getActiveNetworkInfo().isConnected()) {
        Log.v(TAG, "Internet is working");
        // txt_status.setText("Internet is working");
        return true;
    } else {
        // txt_status.setText("Internet Connection Not Present");
        Log.v(TAG, "Internet Connection Not Present");
        return false;
    }
}
用这个

公共静态布尔值isInternetOnContext上下文{

    ConnectivityManager cm = (ConnectivityManager) context
            .getSystemService(Context.CONNECTIVITY_SERVICE);
    // test for connection
    if (cm.getActiveNetworkInfo() != null
            && cm.getActiveNetworkInfo().isAvailable()
            && cm.getActiveNetworkInfo().isConnected()) {
        Log.v(TAG, "Internet is working");
        // txt_status.setText("Internet is working");
        return true;
    } else {
        // txt_status.setText("Internet Connection Not Present");
        Log.v(TAG, "Internet Connection Not Present");
        return false;
    }
}
选中此项:

private boolean isNetworkAvailable()
{
  ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
  State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
  State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();

  if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING)
  {             
      // Wifi connected     
  }
  else if(mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING)
  {
      // Mobile network connected
  }
}
选中此项:

private boolean isNetworkAvailable()
{
  ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
  State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState();
  State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState();

  if (wifi == NetworkInfo.State.CONNECTED || wifi == NetworkInfo.State.CONNECTING)
  {             
      // Wifi connected     
  }
  else if(mobile == NetworkInfo.State.CONNECTED || mobile == NetworkInfo.State.CONNECTING)
  {
      // Mobile network connected
  }
}

它在哪里崩溃?你得到了什么错误?发布你的日志猫..它在哪里崩溃?你得到了什么错误?发布你的日志猫..谢谢大家的帮助。请检查我在发生此错误时得到的日志猫值。当我的设备显示internet连接但没有internet访问时,会出现此错误..请检查此loagcat您的日志猫值在哪里?Thanks all寻求帮助。请检查我在发生此错误时获得的logcat值。当我的设备显示internet连接但没有internet访问时,会出现此错误。请检查此loagcat logcat值在哪里?