Вот что я хотел бы сделать:
=> ЕСЛИ WiFi включен И активен, запустите намерение (на самом деле это WebView, который получает свое содержимое => инструкции моего приложения в Интернете)
=> ЕСЛИ НЕТ, тогда я бы запустил другое намерение, чтобы не отображать WebView с «Веб-страница недоступна... Веб-страница по адресу http://www.mywebsite.com может быть временно недоступен или перемещен ..."
Сначала я пытался использовать
если (wifi.isWifiEnabled())
но это не говорит о том, является ли соединение Wi-Fi АКТИВНЫМ или нет. Это говорит только о том, что пользователь включил переключатель. Устройство может быть подключено или не подключено... Это правильно?
Затем я попытался использовать:
если (wifi.getConnectionInfo().getSSID()!= ноль)
но я заметил, что он возвращает строку, даже если соединение было потеряно или отключено...?
Как мне тогда поступить?
wifi = (WifiManager)getSystemService(Context.WIFI_SERVICE);
Intent intent_instructions;
if (wifi.getConnectionInfo().getSSID()!= null){
Log.i("Hub", "WiFi is enabled AND active !");
Log.i("Hub", "SSID = "+wifi.getConnectionInfo().getSSID());
intent_instructions = new Intent(this, Instructions.class);
}else{
Log.i("Hub", "NO WiFi");
intent_instructions = new Intent(this, Instructions_No_WiFi.class);
}
this.startActivity(intent_instructions);
Есть ли более общий способ проверить, есть ли у устройства подключение к Интернету непосредственно перед запуском намерения? будь то через Wi-Fi, 3G и т. д. ...
Заранее спасибо за помощь.