Android 安卓:当无法访问互联网但已连接到网络时广播或回调
我必须处理以下特殊情况: 我的手机和应用程序连接到Wifi路由器。 现在,到路由器的以太网电缆被取出,因此互联网连接丢失。 但手机仍然连接到这个Wifi路由器。Android 安卓:当无法访问互联网但已连接到网络时广播或回调,android,broadcastreceiver,android-internet,Android,Broadcastreceiver,Android Internet,我必须处理以下特殊情况: 我的手机和应用程序连接到Wifi路由器。 现在,到路由器的以太网电缆被取出,因此互联网连接丢失。 但手机仍然连接到这个Wifi路由器。 当出现上述情况时,我是否可以得到广播或回调?最简单、最简单的方法是:ping到任何像这里这样的服务器。我ping到谷歌,检查响应是否为空。。。当您对连接有疑问时,在android活动中调用此函数 public void GET(){ String result = ""; HttpResponse response;
当出现上述情况时,我是否可以得到广播或回调?最简单、最简单的方法是:ping到任何像这里这样的服务器。我ping到谷歌,检查响应是否为空。。。当您对连接有疑问时,在android活动中调用此函数
public void GET(){
String result = "";
HttpResponse response;
HttpEntity entity;
try {
HttpPost httppost = new HttpPost("http://google.com");
DefaultHttpClient httpclient = getHttpClientImpl();
response = httpclient.execute(httppost);
entity = response.getEntity();
if (entity != null) {
InputStream is = entity.getContent();
if (is != null) {
StringBuilder sb = new StringBuilder();
String line;
try {
BufferedReader reader = new BufferedReader(
new InputStreamReader(is, "UTF-8"), 8 * 1024);
while ((line = reader.readLine()) != null) {
sb.append(line);// .append("\n");
}
} catch (Exception e) {
e.printStackTrace();
} finally {
is.close();
}
result = sb.toString();
if (responseXML.equals("")){
// Internet connectivity is lost.
}else {
// Internet connectivity still here xnjoy.
}
}
entity.consumeContent();
}
httpclient.getConnectionManager().shutdown();
} catch (Exception e) {
Log.d("InputStream", e.getLocalizedMessage());
}
}
你找到解决办法了吗?我也在寻找。