2017-01-19 1 views
0

Gruß !!Connectivity Manager in Android

Ich habe ein Problem, ich habe eine Connectivity-Manager-Klasse verwendet, um den Netzwerkstatus zu erhalten. Die Klasse funktioniert in 90% Android-Geräte, aber es funktioniert nicht in einigen Geräten.

Blick auf mein Code .Posted unten-

public class Connectivity { 
    public static boolean isConnected(Context context){ 
     boolean found=false; 
     ConnectivityManager manager=(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     NetworkInfo network=manager.getActiveNetworkInfo(); 
     if (network!=null && network.isAvailable() && network.isConnected()) 
      found=true; 
     return found; 
    } 
} 

Antwort

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

Sind Sie sicher, dass obige Code in funktionieren alle Geräte (SDK> = 16) .Coz Ich habe kein bestimmtes Handy und Szenario, wo mein Code nicht funktioniert. Es ist passiert, einige der Client-Geräte. – DUKE

+0

ja, ich benutze es. – Mangal

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

Eine kleine Änderung im Code wird definitiv helfen ...

+0

Danke, ich versuche es. – DUKE