这就是我想做的:
=>如果WiFi已启用且处于活动状态,请启动一个意图(实际上是获取其内容的WebView =>我的应用在网络上的说明)
=>如果没有,那么我会发动另一意图,使我没有显示出与“Web页面的WebView不可用......在该网页http://www.mywebsite.com可能暂时关闭或可能有感动...”
我最初使用
如果(wifi.isWifiEnabled())
但这并不表示Wifi连接是否处于活动状态。它仅表示用户已打开开关。设备可能已连接或可能未连接...这是正确的吗?
然后我尝试使用:
如果(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);
是否有更通用的方法可以在启动意图之前测试设备是否具有与Internet的连接?通过Wifi,3G等...
在此先感谢您的帮助。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
尝试android.net.ConnectivityManager.getActiveNetworkInfo():如果返回,则表明null您没有连接;如果它返回一个NetworkInfo对象,则可以使用来检查连接的状态NetworkInfo.getState(),如果已NetworkInfo.State.CONNECTED连接,则说明已连接,否则就没有。