我在自己的电脑上用tomcat架设了web服务器,服务器里设置了相应的jsp,然后用HttpURLConnection链接web服务器,代码如下
try {
  URL url = new URL("http", "192.168.0.105", 8080,
  "/login.jsp?id=huzhiheng&password=123456&table=user");// 连接地址
  HttpURLConnection conn = (HttpURLConnection) url.openConnection();
  byte [] data = new byte[512] ; // 开辟空间
  int len = conn.getInputStream().read(data); // 接收数据
  if(len > 0){
  String temp = new String(data,0,len).trim() ;
  Log.v("test",temp);
  flag = Boolean.parseBoolean(temp); // 数据转型
  info.setText(temp) ;
  }
  conn.getInputStream().close() ; // 关闭输入流
  } catch (Exception e) {
  e.printStackTrace() ;
  info.setText("登陆服务器失败!");
  }
在虚拟机上正常运行,在手机上就不行了直接出错登录失败
我在手机浏览器上输入地址192.168.0.105:8080/login.jsp?id=huzhiheng&password=123456&table=user
也能显示正确数据
苦等各位大神指教啊android,web服务,

解决方案 »

  1.   

    在真机里怎么看异常我在机器里安装apk,在虚拟机里的时候一切正常啊
      

  2.   

    我不知道我实在真机里安装的apk,用
      

  3.   

    首先,你的手机是不是WIFI联网的?
    如果是的话,检查一下,你们WIFI是否可以连通局域网? 比如你用台笔记本电脑用WIFI连网,然后去PING你的主机,看看能不能PING通。如果不是用WIFI联网,那么你必须得有服务器的公网IP才能连通。
      

  4.   

    我在手机里浏览器里的地址栏里输入地址可以访问服务器,今天终于找到异常了是networkonmainthreadexception
      

  5.   

    我找到原因了是因为android4.0不允许在主线程里操作网络连接
      

  6.   

    嗯,刚想说,添加了user权限后,还需要在每个activity上面加断异步线程的代码,,,