我开发了安卓应用程序,并在三星标签2中测试。代码从托管在server.It works中的java服务器页面获取数据,但现在在urlConnection.getInputStream() .I期间显示网络超时异常,我的代码中没有任何变化。请帮我克服这个错误。
try {
String tally_ipaddr="XXXXXXX";
URL url = new URL(tally_ipaddr+"/Iplogin.jsp");
urlConnection = (HttpURLConnection) url.openConnection();
String line = "";
InputStreamReader isr = new InputStreamReader(urlConnection.getInputStream());
BufferedReader reader = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
while ((line = reader.readLine()) != null){
sb.append(line);
}
Toast.makeText(MyActivity.this, sb.toString(), Toast.LENGTH_LONG).show();
}
catch (Exception e) {
e.printStackTrace();
Toast.makeText(MyActivity.this, e.toString(), Toast.LENGTH_LONG).show();
}发布于 2013-06-10 17:09:31
class UrlFetch extends AsyncTask<Void,Void,Void>
{
@Override
protected Void doInBackground(Void... params) {
// TODO Auto-generated method stub
try {
String tally_ipaddr="XXXXXXX";
URL url = new URL(tally_ipaddr+"/Iplogin.jsp");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(5000); // 5 seconds
conn.setRequestMethod("GET");
conn.connect();
BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
System.out.println(line);
}
conn.disconnect();
}
catch (Exception e) {
e.printStackTrace();
}
return null;
}
}并调用异步任务,如下所示
new UrlFetch().execute();我希望上面的代码能为你工作
发布于 2013-06-10 17:51:49
我注意到地址以"Iplogin.jsp“结尾。
确保服务器正在接受来自您设备的IP地址的连接。我认为您设备的IP地址已更改,服务器不再响应来自该设备的请求。
您可以从桌面浏览器访问该服务,但不能从设备浏览器访问,这一事实非常值得怀疑。
https://stackoverflow.com/questions/17020247
复制相似问题