当前位置: 代码迷 >> Android >> 转android 模拟器中干端口重定向
  详细解决方案

转android 模拟器中干端口重定向

热度:94   发布时间:2016-05-01 17:27:07.0
转android 模拟器中做端口重定向
android 模拟器中做端口重定向
2011年01月18日 星期二 16:53

为什么要做端口重定向呢?

开发的过程中遇到一个问题:android的模拟器有个很诡异的特点,就是访问网络的时候只可以从模拟器主动往出去连。但是却无法主的从外面连接模拟器,这个特点和NAT几乎完全一样,具有单向连接的特性。

实际开发中我们希望模拟器像一台独立的手机一样,能和处于同一局域网中的手机进行端对端的通信。这时就需要做端口重定向。

类似于给路由器做nat的端口重定向。下面几步:

>运行模拟器:你会发现模拟器标题栏上写着端口号:5554,其实这个端口号是模拟器的console端口

>telnet到模拟器的console口上:telnet localhost 5554

如果你用的是win7. 默认是没有开启telnet功能的,开启的方法看这里http://hi.baidu.com/lzhts/blog/item/2442d162a0c618cfe6113ae2.html

>在控制台下输入 redir add tcp:7778:9998 就完成了从主机7778端口重定向到模拟器9998端口的任务

redir的语法是:redir <list|add|del>

支持下表列出的子命令:

子命令描述注释
list列出当前的端口重定向(min 150, max 550)
add <protocol>:<host-port>:<guest-port>添加新的端口重定向<protocol> 必须是”tcp” 或 “udp”<host-port> 是主机上开启的端口号<guest-port> 是向模拟器/设备发送数据的端口号
del <protocol>:<host-port>删除端口重定向<protocol> and <host-port>的含义同上
  相关解决方案