標籤:
Android系統預設只能通過IP(10.0.2.2)單向訪問PC電腦,而PC電腦不能通過IP來直接存取Android模擬器系統。要想實現PC電腦和Android模擬器系統以及Android模擬器之間相互連信必須藉助連接埠重新導向(redir)來實現。
先說說連接埠重新導向所需要的telnet用戶端安裝:
windows:
安裝telnet用戶端。如果沒有安裝,可以在windows程式管理中的開啟或關閉系統功能下找到telnet用戶端功能表項目來啟用telnet用戶端功能。
linux:
自行安裝telnet用戶端。
一、PC電腦不能直接存取Android模擬器系統的原因
Android系統為實現通訊將PC電腦IP設定為10.0.2.2,自身為10.0.2.15/127.0.0.1。然而PC電腦並沒有為Android模擬器系統指定IP,所以PC只能通過連接埠重新導向來實現和Android模擬器的通訊。
二、PC電腦和Android模擬器系統之間通訊
1、運行模擬器
2、開啟window 命令列,執行:
5554是模擬器的連接埠(位於Android模擬器視窗標題列),執行之後會進入android console
3、在console下執行:
1 2 3 |
格式:redir add < udp/tcp >:< pc連接埠 >:< 模擬器連接埠 > 例如:redir add udp:2888:2888 redir add tcp:2888:2888 |
執行此命令之後,會把PC 2888 連接埠接收到的tcp/udp資料轉到模擬器的2888連接埠。
三、多個Android模擬器系統之間通訊
1、啟動模擬器emulator-5554和emulator-5556
2、開啟dos視窗執行telnet localhost 5554串連到模擬器5554
3、成功串連後,繼續執行:redir add tcp:5000:6000將PC連接埠5000綁定到模擬器5554的連接埠6000上。
4、此時模擬器5556通過向PC電腦連接埠5000(即地址:10.0.2.2:5000)發送tcp/udp資料包跟模擬器5554通訊。
5、同理根據步驟2、3來實現PC電腦對模擬器5556的連接埠轉寄。
添加成功後,我們可以用redir list命令來列出已經添加的映射連接埠,redir del可以進行刪除。
PC電腦和Android模擬器訪問及模擬器之間tcp/udp通訊