Поиск…


Проверьте подключение к данным

Этот метод предназначен для проверки соединения данных с помощью ping определенного IP или имени домена.

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;
}

Проверьте соединение с помощью ConnectivityManager

    public static boolean isConnectedNetwork (Context context) {

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

    }

Использовать сетевые намерения для выполнения задач, пока данные разрешены

Когда ваше устройство подключается к сети, отправляется намерение. Многие приложения не проверяют эти намерения, но чтобы ваше приложение работало правильно, вы можете слушать сетевые изменения, которые расскажут вам, когда возможно общение. Чтобы проверить подключение к сети, вы можете, например, использовать следующее предложение:

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
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow