Recherche…


Vérifier la connexion de données

Cette méthode consiste à vérifier la connexion de données en exécutant une commande ping sur certains IP ou noms de domaine.

public Boolean isDataConnected() {
    try {
        Process p1 = java.lang.Runtime.getRuntime().exec("ping -c 1 8.8.8.8");
        int returnVal = p1.waitFor();
        boolean reachable = (returnVal==0);
        return reachable;
    } catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    return false;
}

Vérifier la connexion à l'aide de ConnectivityManager

    public static boolean isConnectedNetwork (Context context) {

        ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
        return cm.getActiveNetworkInfo () != null && cm.getActiveNetworkInfo ().isConnectedOrConnecting ();

    }

Utiliser les intentions du réseau pour effectuer des tâches tant que les données sont autorisées

Lorsque votre appareil se connecte à un réseau, une intention est envoyée. De nombreuses applications ne vérifient pas ces intentions, mais pour que votre application fonctionne correctement, vous pouvez écouter les modifications de réseau qui vous indiqueront quand la communication est possible. Pour vérifier la connectivité réseau, vous pouvez, par exemple, utiliser la clause suivante:

if (intent.getAction().equals(android.net.ConnectivityManager.CONNECTIVITY_ACTION)){
 NetworkInfo info = intent.getParcelableExtra(ConnectivityManager.EXTRA_NETWORK_INFO);
//perform your action when connected to a network  
}


Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow