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