本帖最后由 baiyang3721 于 2011-07-04 10:54:51 编辑

解决方案 »

  1.   

    你用的什么IP地址,用loopback地址试试
      

  2.   

    我做过类似的项目,但是我没有遇到过你说的问题。 
    有几个背景需要澄清:
    1. 你是使用hotspot wifi 热点功能连接 PC和mobile,还是使用公共无线路由连接?
    2. 如楼上所说,你有没有试过用localhost 或者 127.0.0.1这样的地址?
      

  3.   

    回楼上2位:
    我是电脑是win7,手机使用wifi和电脑通过无线路由连接的。
    另外我在手机上用localhost试了,手机上的UC浏览器也没有找到server
    127.0.0.1没试过
      

  4.   

    手机的自动获得的ip是192.168.2.101
    端口是2121电脑上在ie中输入http://192.168.2.101:2121就可以
    但是在手机上确不行,我只有一部手机,不知道是不是另外一个手机接入网络也能访问。
      

  5.   

    若只是访问你自己电脑上的服务器的话,
    有了ip和端口应该是没有问题的,只要是你已经让windows的防火墙允许这个端口通过就行。
    你说的不能访问是什么样的现象?
      

  6.   

    估计是涉及到浏览器的问题了,应该和你的应用本身的HTTP协议头有关。 
    IE对HTTP协议头的检查是相当宽松的,换句话说,假设你的HTTP响应只是一段纯粹的文本,什么协议头呀,长度校验呀,都没有,IE一样会原封不动的显示出来。
    但是手机上的浏览器不一样,它对HTTP协议的检查要严格很多,也许是因为手机更加贴近个人安全性需求吧。所以估计你的应用返还的HTTP协议是不齐全的,所以就被手机浏览器当作无效响应啦。以上只是一些猜测,建议你写一个很小的程序去测试就可以了。例如,写一个Activity, 在 onCreate的时候就 Socket 连接 localhost:2121 端口,如果连接没问题,就证明了不是连接层面,而是数据层面的问题了。
      

  7.   

    这个应该有帮助
    http://blog.csdn.net/xinqiqi123/article/details/6552777
      

  8.   

    回楼上,我现在也怀疑这个了,早上把http协议研究了一下,发现自己没有写文件头的信息,有可能
    被浏览器忽略了。晚上回家跟踪一下,看看手机服务端是否接受到请求。
      

  9.   

    还是不行,我是用真机调试的,两部手机都接入网络,代httpserver的ip:192.168.2.101,另外一个ip:192.168.2.102.
    一部有我的程序,httpserver
    用电脑的浏览器直接访问http://192.168.2.101:2121就能访问但是用这部手机通过浏览器就不行.
    晚上又弄了个手机接入后也不行.手机自己访问自己都不行为什么呢?提示的是找不到server,我debug了,也没有进断点.应该是找不到自己的IP
      

  10.   

    现在能访问了。
    但是,有出现了另外一个问题。
    我输出了一个html字符串:<html><body><p>aaaaaaaa</p></body></html>
    但是画面上是空白,不知道为什么?
    http头:
    writeString("HTTP/1.0 200 OK \r\n");
    writeString("Server: MINIServer Ver 2.0 \r\n");
    writeString("Content-Length: "+head.getBytes().length+" \r\n");
    writeString("Content-Type: text/html;charset=utf-8 \r\n");
    writeString("Date: Wed, 16 Nov 2012 01:57:54 GMT \r\n");
    writeString("Connection: close \r\n");