android socket通信 模拟器可以 真机不行 是防火墙的原因

=============================================================================================================

从网上找了个例子,没有设置wifi时程序正常,pc上运行java程序作为服务器,模拟器上运行java作为客户端,服务器ip为pc的ip。


pc系统为windows7,使用connectify-me设置wifi后,使用手机连接wifi,不能连接。


据说,是因为分享网络设置wifi热点后端口号会发生变化,具体情况不清楚。


后来发现在没有wifi时模拟器和pc公用一个网卡,ip是相同的。


打算回去后,将pc和手机都连接到路由器的wifi上测试一下。



=================================================================================================================

之前在开源社区提出这个问题(www.oschina.net/question/1537697_149032),这位老师回答的很对,我在宿舍里用360wifi又试了一次,只是这次把防火墙关掉了,就可以了。


1、首先要保证可以ping通;

2、然后保证isReachable返回true(我认为这是为了保证java发送的包是可以被接受到的);

3、然后要保证发送的socket可以通过而不被防火墙屏蔽掉。


这里的防火墙是指windows防火墙,我后来发现360安全卫士开着的时候也可以通信


转载于:https://my.oschina.net/u/1537697/blog/214053

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值