我无法在互联网上找到任何有用的教程,也无法找到开发人员网站上的文档。Android:HttpClient参数 - 连接和套接字超时
在我的应用我连接到Web服务器使用HttpPost,当有没有互联网连接,但无线是它显示一个白色的屏幕和后10至15秒“的UnknownHostException”。
我抓住了这个异常并提出烤面包一样
Unable to connect, check your internet connection.
,并关闭活动(或应用程序,因为我是第一次使用活动结束())。
当无线本身是关闭我得到即时的面包如”
You need internet connection to use this Application
,但第一种情况下是刺激性的。以10-15秒时间,然后显示敬酒。
所以我用HttpParameters并增加了一个5秒ConnectionTimeout参数。
但应用程序的工作与之前一样(此参数没有影响)。
如何追踪ConnectionTime(5秒以上)?这样我就可以显示像
Slow internet connection
而且敬酒,为什么不工作了互联网连接检查时无线网络连接上,但没有互联网
这是我检查时,我的应用程序lauched:
cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if (isOnline(cm, this, SignUpActivity.this)){
//continue
}
public static boolean isOnline(ConnectivityManager cm, Context c, Activity a) {
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
}
Toast.makeText(c, "You need internet access to run this application",
Toast.LENGTH_SHORT).show();
a.finish();
return false;
}
我只检查设备的wifi是否打开。如果是这样,我怎么能检查自己是否有互联网连接,而不仅仅是连接WIFI
谢谢
其实我也使用SocketTimeout。 Sry,我没有在这个问题中提到它。至于第二种解决方案,你的意思是我只是检查WiFi是否打开?我必须改变它o如果无线网络正在检查互联网接入是否可用?第二个是 –
。当wi-fi打开时,只有在这种情况下,请检查您的实际服务器可达性 – Shine
在我的应用程序中此代码的工作原理:HttpParams httpParameters = new BasicHttpParams(); \t \t \t int timeoutConnection = serverTimeout; (httpParameters,timeoutConnection); HttpResponse响应;响应= httpclient.execute(httpget); – Shine