Android可达性测试

发布于 2024-11-27 12:08:11 字数 851 浏览 4 评论 0原文

我有一个关于如何检查某个网址的可达性的问题。我可以通过 httpget url 连接来做到这一点。

HttpGet httpGet = new HttpGet(HOST_URL);
HttpParams httpParameters = new BasicHttpParams();
int timeoutConnection = 5000;
HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
int timeoutSocket = 8000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
HttpResponse response = httpClient.execute(httpGet);

但我想用这种方式来做。

ConnectivityManager cm = (ConnectivityManager) TabViewActivity.this.getSystemService(Context.CONNECTIVITY_SERVICE);
boolean test = cm.requestRouteToHost(ConnectivityManager.TYPE_WIFI,
                            lookupHost(HOST_IP));

但问题是布尔值总是返回 flase。

如果您对这个问题有任何想法,这将会有很大的帮助。

提前致谢。

I have an issue regarding how to check the reachability of a certain url. I can do it with a httpget url connection.

HttpGet httpGet = new HttpGet(HOST_URL);
HttpParams httpParameters = new BasicHttpParams();
int timeoutConnection = 5000;
HttpConnectionParams.setConnectionTimeout(httpParameters, timeoutConnection);
int timeoutSocket = 8000;
HttpConnectionParams.setSoTimeout(httpParameters, timeoutSocket);
DefaultHttpClient httpClient = new DefaultHttpClient(httpParameters);
HttpResponse response = httpClient.execute(httpGet);

But i want to do it with this way.

ConnectivityManager cm = (ConnectivityManager) TabViewActivity.this.getSystemService(Context.CONNECTIVITY_SERVICE);
boolean test = cm.requestRouteToHost(ConnectivityManager.TYPE_WIFI,
                            lookupHost(HOST_IP));

But the problem is the boolean always returns flase.

If you have any ideas about this issue it will be a big help.

Thanks in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

千纸鹤带着心事 2024-12-04 12:08:11

requestRouteToHost 不适用于 type_wifi

requestRouteToHost 方法可以正确返回整数值,因为它适用于 type_mobile.

Type_wifi 是它无法使用的类型。

不过您需要权限:

ACCESS_NETWORK_STATE

ACCESS_WIFI_STATE

requestRouteToHost doesnt work with type_wifi

requestRouteToHost method returns the integer value correctly since it works with type_mobile.

Type_wifi is the one which it doesnt work with.

Nevertheless You need permissions :

ACCESS_NETWORK_STATE

ACCESS_WIFI_STATE
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文