我的应用程序连接到Internet onCreate,它在AsyncTaks类中执行此操作并且一切正常。我有一些错误检查,以确保有互联网可用,如果我说我的手机在飞行模式下工作得很好。
我的问题是,当我在WIFI上,我住的时候WWW会不时出现,但电话仍然认为它是连接的。例如,手机仍然连接到WIFI加密狗,但WIFI加密狗没有连接到WWW,因此当应用程序打开并尝试连接时会出现错误,我会关闭一个力量。
如何进行完整的互联网连接检查onCreate将覆盖所有基地???
干杯,
麦克
答案 0 :(得分:0)
一种可能性就是处理您以更好的方式获得的错误。你现在正在接近一支部队,因为(我猜)你从你的申请中得到一个RuntimeException
。处理异常并向用户提供正确的消息可能就足够了。
另一种方法是与一些高可用服务器建立一个(或几个)连接以查看它是否有效。例如,类似下面的内容应该有效:
HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet("http://www.google.com/");
try {
HttpResponse response = client.execute(request);
txtResult.setText(HttpHelper.request(response));
// internet is working
} catch(Exception ex) {
// internet is not working
txtResult.setText("Internet ENOWORK");
}
如果您发布了您收到的异常/错误并对我的回答发表评论,我可以使用更多细节进行编辑。