模拟器作为服务器,模拟器运行的PC作为客户端,PC连接127.0.0.1:6100,可以连接,收发正常。
PC的地址是192.168.1.105,模拟器的地址是192.168.1.110.现在用另外一台PC作为客户端,地址192.168.1.101,想要和模拟器建立TCP连接。
连接192.168.1.105:6100或者连接192.168.1.110:7100,都连接不上。有人碰到过这种问题吗?是什么原因呢?另外在控制台运行netstat -b,看到6100端口是adb.exe占用,而非emulator-arm.exe。但如果用模拟器作client的话,占用端口的就是emulator-arm.exe。是不是和这个有关系呢?
PC的地址是192.168.1.105,模拟器的地址是192.168.1.110.现在用另外一台PC作为客户端,地址192.168.1.101,想要和模拟器建立TCP连接。
连接192.168.1.105:6100或者连接192.168.1.110:7100,都连接不上。有人碰到过这种问题吗?是什么原因呢?另外在控制台运行netstat -b,看到6100端口是adb.exe占用,而非emulator-arm.exe。但如果用模拟器作client的话,占用端口的就是emulator-arm.exe。是不是和这个有关系呢?
解决方案 »
- 自定义View编译失败。Binary XML file line #255: Error inflating
- 求助.....强制关闭了 。。。不清楚是哪的原因
- 取不到map中的数据
- default.properties文件中的split.density是什么意思?
- android如何使用自己编译的sdk?
- C#做服务端 android做客户端 通讯
- 探讨此段代码有无内存泄漏
- 下载耗时的文件
- 在一个activity里面怎么监听别的xml的控件的事件
- 一个android的新浪微博sdk的问题
- 如何在手机和电脑上通过蓝牙适配器相互传输文件
- 打算开始Android开发,正在下载API,有个API版本的疑问
你可以先用telnet验证一下,telnet到模拟器上试试
我以前的问题就是,两个模拟器在同一个PC上运行(当然PC是用xshell连接到server)就可以通信,而不同的PC就有问题(两个PC都连服务器)
其实adb所占用的端口是和tcp的端口差2好像一些调试方法:
启动模拟器的时候加上-verbose,把qemu的相关log开关打开
qemu代码在/external/qemu,最好读一下代码才能知道哪出问题了
后面用-verbose启动模拟器,看到了很多输出信息。qemu的相关log开关这段不太懂怎么搞。用netstat -na发现 adb在监听127.0.0.1:6100。另外eclipse和adb以及emulator等的连接好像都是通过127.0.0.1的某些端口。在网上查了一下,看大家说127.0.0.1是不经过网卡的,也就是说是在机器内部测试用的。所以我想可能是外面访问的端口和这个127.0.0.1的端口没有映射,所以收不到。最后使用真机测试了,程序装到真机后用真机ip:7100可以连接。看来以后只能这么调试了,我哭
如果是127.0.0.1那只有本机知道了
有真机就用真机测试,毕竟模拟器有很多问题,我们当初是做双模实在没地方找真机
deadline快到了,我先用真机了,幸好真机还能连通,这个问题以后再慢慢研究。