ServerSocket的问题 本帖最后由 baiyang3721 于 2011-07-04 10:54:51 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你用的什么IP地址,用loopback地址试试 我做过类似的项目,但是我没有遇到过你说的问题。 有几个背景需要澄清:1. 你是使用hotspot wifi 热点功能连接 PC和mobile,还是使用公共无线路由连接?2. 如楼上所说,你有没有试过用localhost 或者 127.0.0.1这样的地址? 回楼上2位:我是电脑是win7,手机使用wifi和电脑通过无线路由连接的。另外我在手机上用localhost试了,手机上的UC浏览器也没有找到server127.0.0.1没试过 手机的自动获得的ip是192.168.2.101端口是2121电脑上在ie中输入http://192.168.2.101:2121就可以但是在手机上确不行,我只有一部手机,不知道是不是另外一个手机接入网络也能访问。 若只是访问你自己电脑上的服务器的话,有了ip和端口应该是没有问题的,只要是你已经让windows的防火墙允许这个端口通过就行。你说的不能访问是什么样的现象? 估计是涉及到浏览器的问题了,应该和你的应用本身的HTTP协议头有关。 IE对HTTP协议头的检查是相当宽松的,换句话说,假设你的HTTP响应只是一段纯粹的文本,什么协议头呀,长度校验呀,都没有,IE一样会原封不动的显示出来。但是手机上的浏览器不一样,它对HTTP协议的检查要严格很多,也许是因为手机更加贴近个人安全性需求吧。所以估计你的应用返还的HTTP协议是不齐全的,所以就被手机浏览器当作无效响应啦。以上只是一些猜测,建议你写一个很小的程序去测试就可以了。例如,写一个Activity, 在 onCreate的时候就 Socket 连接 localhost:2121 端口,如果连接没问题,就证明了不是连接层面,而是数据层面的问题了。 这个应该有帮助http://blog.csdn.net/xinqiqi123/article/details/6552777 回楼上,我现在也怀疑这个了,早上把http协议研究了一下,发现自己没有写文件头的信息,有可能被浏览器忽略了。晚上回家跟踪一下,看看手机服务端是否接受到请求。 还是不行,我是用真机调试的,两部手机都接入网络,代httpserver的ip:192.168.2.101,另外一个ip:192.168.2.102.一部有我的程序,httpserver用电脑的浏览器直接访问http://192.168.2.101:2121就能访问但是用这部手机通过浏览器就不行.晚上又弄了个手机接入后也不行.手机自己访问自己都不行为什么呢?提示的是找不到server,我debug了,也没有进断点.应该是找不到自己的IP 现在能访问了。但是,有出现了另外一个问题。我输出了一个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"); android手机 javamail发送带附件的邮件 setResult(Activity.RESULT_OK, intent)这个Activity不返回值 求助:ListView怎么显示不了,Adapter实现是否有问题...哪位帮忙看下... 送分 android 平台下如何开发office android 如何判断蓝牙连接成功了 关于samsung I9000中的包 愁人的ANR(求助) android 串口 通信 来小伙伴们围观下,解决下 andriod串口接收 新手级问题 谁能详细介绍一下uri 谢谢了
有几个背景需要澄清:
1. 你是使用hotspot wifi 热点功能连接 PC和mobile,还是使用公共无线路由连接?
2. 如楼上所说,你有没有试过用localhost 或者 127.0.0.1这样的地址?
我是电脑是win7,手机使用wifi和电脑通过无线路由连接的。
另外我在手机上用localhost试了,手机上的UC浏览器也没有找到server
127.0.0.1没试过
端口是2121电脑上在ie中输入http://192.168.2.101:2121就可以
但是在手机上确不行,我只有一部手机,不知道是不是另外一个手机接入网络也能访问。
有了ip和端口应该是没有问题的,只要是你已经让windows的防火墙允许这个端口通过就行。
你说的不能访问是什么样的现象?
IE对HTTP协议头的检查是相当宽松的,换句话说,假设你的HTTP响应只是一段纯粹的文本,什么协议头呀,长度校验呀,都没有,IE一样会原封不动的显示出来。
但是手机上的浏览器不一样,它对HTTP协议的检查要严格很多,也许是因为手机更加贴近个人安全性需求吧。所以估计你的应用返还的HTTP协议是不齐全的,所以就被手机浏览器当作无效响应啦。以上只是一些猜测,建议你写一个很小的程序去测试就可以了。例如,写一个Activity, 在 onCreate的时候就 Socket 连接 localhost:2121 端口,如果连接没问题,就证明了不是连接层面,而是数据层面的问题了。
http://blog.csdn.net/xinqiqi123/article/details/6552777
被浏览器忽略了。晚上回家跟踪一下,看看手机服务端是否接受到请求。
一部有我的程序,httpserver
用电脑的浏览器直接访问http://192.168.2.101:2121就能访问但是用这部手机通过浏览器就不行.
晚上又弄了个手机接入后也不行.手机自己访问自己都不行为什么呢?提示的是找不到server,我debug了,也没有进断点.应该是找不到自己的IP
但是,有出现了另外一个问题。
我输出了一个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");