Вот что я хотел бы сделать:
=> ЕСЛИ WiFi включен и активен, запустите намерение (фактически это WebView, который получает свое содержимое => инструкции моего приложения в Интернете)
=> Если НЕТ, то я бы запустил другое намерение, чтобы я не показывал веб-представление с «Веб-страница недоступна ... Веб-страница на http://www.mywebsite.com может быть временно недоступна или может иметь переехал ... "
Я изначально пытался использовать
, если (wifi.isWifiEnabled ())
но это не говорит, является ли соединение Wi-Fi АКТИВНЫМ или нет. Это говорит только о том, что пользователь включил переключатель. Устройство может быть подключено или не подключено ... Это правильно?
Тогда я попытался использовать:
if (wifi.getConnectionInfo (). GetSSID ()! = Null)
но я заметил, что он возвращает строку, даже если соединение было потеряно или было отключено ...?
Как мне тогда поступить?
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);
Существует ли более общий способ проверки наличия подключения устройства к Интернету непосредственно перед запуском намерения? будь то через Wifi, 3G и т.д ...
Заранее спасибо за помощь.