Чтобы проверить подключение к Интернету, я использую этот код:Android: Проверьте подключение к Интернету - возвращает истину (неправильно)
public boolean isOnline() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
//return netInfo != null && netInfo.isConnectedOrConnecting();
return netInfo != null && netInfo.isAvailable() && netInfo.isConnected();
}
Это наиболее часто используемый код, который я нашел везде - однако он не работает надежно ,
Это верно, хотя я не могу использовать Интернет.
Другие приложения на моем мобильном телефоне правильно сообщают: «Не удается подключиться к Интернету».
EDIT 1
Оказывается, что она возвращает истину, если подключение к Интернету есть - даже если он является непригодным для использования по какой-то причине.
Если я отключу мобильный телефон/Интернет на своем телефоне, то этот метод правильно вернет значение false.
я думаю, что интернет доступен для вас, но сила связи довольно низкая или не могут обмениваться данными из-за этого плохого соединения. –
Проблема в том, что вы подключены к «NETWORK», но «ИНТЕРНЕТ» «НЕ ДОСТУПНО». – dhuma1981
Pramod> Да, похоже, так. Я добавил дополнительную информацию к вопросу. – Jasper