0

J'essaie de vérifier la connectivité Internet sur les SMS de réception. Mais mon service force la fermeture en changeant d'état internet. E.g Si j'ai activé le wifi fonctionne bien mais quand je désactive l'application wifi se ferme avec erreur. J'utilise ce code dans la fonction onReceive. Voici le code.Vérification de la connectivité Internet dans Android

 ConnectivityManager cm = (ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE); 

    NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); 
    boolean isConnected = activeNetwork != null && activeNetwork.isConnectedOrConnecting(); 

    if(isConnected == true) { 
      Toast.makeText(context, "Internet", Toast.LENGTH_LONG).show(); 
    } 
    else if(isConnected == false){ 
      Toast.makeText(context, "No Internet", Toast.LENGTH_LONG).show(); 
    }  
+0

http://www.androidhive.info/2012/07/android-detect-internet-connection-status/ –

Répondre

0

essayez d'utiliser ce code

WifiManager wifiManager = (WifiManager)this.context.getSystemService(Context.WIFI_SERVICE); 
    wifiManager.setWifiEnabled(status); 

    Also add Permission in Manifest File : 
    <uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> 
+0

Il ne détecte wifi mais pas internet. Ai-je raison? –

+0

Oui pour le wifi ... – Naveen

0

Vous pouvez ajouter ci-dessous

<!-- Internet Permissions --> 
<uses-permission android:name="android.permission.INTERNET" /> 

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

<!-- Network State Permissions --> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 

S'il vous plaît Cochez cette démonstration

  1. Android Detect Internet Connection Status
+1

Cela n'aide pas. ' ' –

+0

Son autorisation parfaite –

+0

Mais ce n'est pas résoudre le problème. –

0

i utiliser ce code
Créer nouvelle classe, essayez

public class Network{ 
    public static boolean isNetworkAvailable(Context context) { 
     ConnectivityManager connectivityManager 
       = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); 
     NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo(); 
     return activeNetworkInfo != null && activeNetworkInfo.isConnected(); 
    } 
} 

appel

Network.isNetworkAvailable(Activity Name.this); 

et utiliser ces autorisations

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

Essayez d'utiliser ce code

ajouter l'autorisation dans le fichier manifeste

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


public class ConnectionDetector { 
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; 
} 
} 

appel

ConnectionDetector.isConnectingToInternet(LoginActivity.this);