【发布时间】:2011-08-04 09:42:25
【问题描述】:
似乎每个人都无法从模拟器访问本地机器或互联网等。所有这些都对我有用。现在我在我的家庭服务器上安装了我的 WCF 服务,打开了端口,我可以用浏览器正常浏览。
我在模拟器中更改了 URL,指向“真实”服务器,它可以正常工作。现在,我在设备上安装了应用程序,连接到服务器超时(10 秒)。我想念什么?
服务器是带有 .NET WCF REST 服务的 IIS7.5。设备连接到 3G,我可以从设备上的网络浏览器浏览我自己的网站,但在代码中它失败了。代码看起来像这样,我的网址像“http://domain:8080/mobile/auth”
编辑:在另一部手机上试过,它可以工作!有什么问题?我的手机是带有 2.3 的 Nexus S,我的目标是 2.2,我的模拟器是 2.2 而我的另一部手机(可以工作)也是 2.2
此外,TMobile 上的一部手机和 Sprint 上的另一部手机。这是奇怪的问题吗?
编辑 2: 一些谷歌搜索..它可能与 T-Mobile 阻止端口 8080 有关。我确实发布了专门的帖子,当我通过浏览器浏览时它确实 GET,所以也许我的问题在那里。明天我会在另一部 T-Mobile 手机上试试。
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT);
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT);
HttpClient client = new DefaultHttpClient(httpParams);
HttpPost request = new HttpPost(url);
try
{
StringEntity entity = new StringEntity(requestData);
entity.setContentType(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
request.setEntity(entity);
ResponseHandler<String> handler = new BasicResponseHandler();
returnData = client.execute(request, handler);
}
catch (Throwable e)
{
String s = e.getMessage();
//TODO: Log exception on device
}
【问题讨论】:
标签: android