Итак, я сравниваю, какую из двух функций я должен использовать ниже. Я знаю, что один проверяет, подключен ли телефон к интернету или чекам, если у вас есть соединение вообще? Работает ли лучше, чем другой, что делает один против другого? Они делают то же самое?Проверка подключения к Интернету в Android (сравнение функций)
Функция 1:
public static boolean hasActiveInternetConnection(Context context) {
if (isNetworkAvailable(context)) {
try {
HttpURLConnection urlc = (HttpURLConnection) (new URL("http://www.google.com").openConnection());
urlc.setRequestProperty("User-Agent", "Test");
urlc.setRequestProperty("Connection", "close");
urlc.setConnectTimeout(1500);
urlc.connect();
return (urlc.getResponseCode() == 200);
} catch (IOException e) {
Log.e(LOG_TAG, "Error checking internet connection", e);
}
} else {
Log.d(LOG_TAG, "No network available!");
}
return false;
}
Функция 2:
private boolean isNetworkAvailable() {
ConnectivityManager connectivityManager
= (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo activeNetworkInfo = connectivityManager.getActiveNetworkInfo();
return activeNetworkInfo != null;
}
Все ответы были хорошими, выбрали это, потому что он упомянул лучшие практики .... Спасибо всем. –
Спасибо. Наслаждаться. –