Форум программистов, компьютерный форум, киберфорум
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.88/26: Рейтинг темы: голосов - 26, средняя оценка - 4.88
988 / 511 / 102
Регистрация: 19.03.2013
Сообщений: 3,113
Записей в блоге: 19
1

Проверка internet connection. Проверка доступности сети

23.07.2013, 17:35. Просмотров 4680. Ответов 2
Метки нет (Все метки)

Добрый день.

Для проверки Internet Connection советуют делать что-то вроде:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
private boolean haveNetworkConnection() {
    boolean haveConnectedWifi = false;
    boolean haveConnectedMobile = false;
 
    ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo[] netInfo = cm.getAllNetworkInfo();
    for (NetworkInfo ni : netInfo) {
        if (ni.getTypeName().equalsIgnoreCase("WIFI"))
            if (ni.isConnected())
                haveConnectedWifi = true;
        if (ni.getTypeName().equalsIgnoreCase("MOBILE"))
            if (ni.isConnected())
                haveConnectedMobile = true;
    }
    return haveConnectedWifi || haveConnectedMobile;
}
Я проверял на эмуляторе - отключение интернета на компе никак не влияет на работу. Девайс продолжает пытаться ломиться в интернет. Как дать девайсу понять, что хоть wi-fi и включен, но интернета нет.

Как правильно решить этот вопрос?

Моя единственная идея - пинговать адрес перед http-запросом и делать запрос если ping прошел. Или ставить таймаут на http request/response.. но я не знаю как.

Добавлено через 2 часа 41 минуту
Сделал костыль, как написано вот тут: http://stackoverflow.com/a/5803489/1912385
Вроде работает так как нужно.

Плюс проверка с использованием ConnectivityManager.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.07.2013, 17:35
Ответы с готовыми решениями:

Проверка доступности файла по пути к файлу
В своем приложении я использую файлы с SD карты. Так вот хотелось бы как-то проверить доступность...

Проверка доступности ПК в сети в цикле
Добрый день, второй день ломаю голову над тем чтобы в цикле проверять доступность пк в сети, будьте...

Проверка доступности адреса?
Добрый день, Подскажите простой вариант проверки адреса URL, доступен - перейти на него, нет -...

Проверка доступности хоста
Доброго времени. Подскажите какой самый шустрый в плане быстродействия инструмент проверки...

2
104 / 104 / 1
Регистрация: 09.04.2012
Сообщений: 655
23.07.2013, 20:12 2
А это не подойдет?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
 
public class ConnectionDetector {
 
    private Context _context;
 
    public ConnectionDetector(Context context){
        this._context = context;
    }
 
    public boolean isConnectingToInternet(){
        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;
    }
}
У меня на эмуляторе отлавливает, что инета нет
1
988 / 511 / 102
Регистрация: 19.03.2013
Сообщений: 3,113
Записей в блоге: 19
23.07.2013, 21:16  [ТС] 3
Может подойдет, надо проверить.
Это штука работает, если вообще нет подключения к инету. Но если он есть, но плохо работает - не подойдет. Нужен timeout и проверка доступности адреса...
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.07.2013, 21:16

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Проверка доступности google
Здравствуйте. Пишу сайт ориентированный на несколько стран. На сайте присутствует google карта. В...

Проверка доступности интернета
Подскажите, настроил скрипт ping.vbs для проверки в локальной сети доступности сервера и отправке...

Проверка доступности API
Добрый день. У меня есть API для программы. Хочу сделать проверку в программе WinForm на...

Проверка доступности FTP
Программа должна скачивать с FTP, который доступен не всегда.Как сделать проверку на доступность,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.