【发布时间】:2013-02-06 21:44:13
【问题描述】:
我想知道是否有某种方法可以让模拟器在访问互联网时表现得像真实设备一样。在任何需要互联网访问的操作之前,我通常会像这样检查连接
public boolean internet(){
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = cm.getActiveNetworkInfo();
if (netInfo != null && netInfo.isConnectedOrConnecting()) {
return true;
}
return false;
}
但是在真实设备上并且当移动接收很差时,互联网连接实际上不可用,因为 internet() 返回了 true。这不仅仅是延迟问题或低速问题,它根本没有发送请求(或者永远不会得到响应,我不知道)。目前我在打电话时遇到这个问题
HttpGet request = new HttpGet(new URI(url));
HttpResponse response = httpclient.execute(request);
并且不知道如何在真实设备上调试它。我很确定这是移动互联网连接的问题,因为当通过 wi-fi 连接同一设备时我没有问题。 我认为设置 httpclient 套接字和连接超时可以解决问题,但我仍然遇到崩溃。
【问题讨论】:
-
请添加崩溃日志
-
@Mr.Me 如何从设备获取日志?
-
连接PC可以看到log throw logcat。否则,您将不得不编写自己的日志方法,可能会将任何异常输出写入您的 sdcard 或其他东西
标签: android connection emulation