多个Android模拟器之间如何进行通信

简介:
Android模拟器的网络配置和普通的手机不同,每个模拟器都自动分配为10.0.2.15的IP,既无法直接和外部通信,同一个PC上的多个模拟器之间也无法直接进行通信。本章简单介绍一下模拟器的网络布局,和如何通过将端口进行重定向来实现模拟器之间的通信。


的通信也要通过一个网络的中转才能完成


首先看一下Emulator的网络配置图


从图中我们看出每个模拟器的IP都是10.0.2.15,而它所运行在的PC机的IP地址是10.0.2.2,我们就可以通过PC来打开缺口。


比如我们把模拟器M1的端口51000暴露给其他模拟器,那么可以通过下面的命令来


telnet localhost 5444


在登录的界面中输入下面的命令


redir add tcp:50000:51000


执行成功以后,我们就可以通过连接 10.0.2.2:50000端口来转接到M1的51000端口。


比如我们进行简单的socket连接如下,


M1作为服务器监听在51000端口:


                ServerSocket server = new ServerSocket();
                SocketAddress saEndPoint = new InetSocketAddress("10.0.2.15", 51000);    
                Log.d(TAG, "Server bind endpoint :" + saEndPoint);
                server.bind(saEndPoint);


M2作为客户端去连接M1


              Socket clientSocket = new Socket();


             clientSocket.connect(new InetSocketAddress("10.0.2.2", 50000), 1000);


如果实现时没有什么错误的话,就可以成功连接了。
相关文章
|
4天前
|
Android开发
Android JNI与CAN通信遇到的问题总结
Android JNI与CAN通信遇到的问题总结
26 1
|
5月前
|
安全 Android开发
夜神模拟器 安卓7.0 burp抓包 https流量
夜神模拟器 安卓7.0 burp抓包 https流量
172 0
|
7月前
|
存储 网络协议 物联网
Android集成MQTT教程:实现高效通信和实时消息传输
Android集成MQTT教程:实现高效通信和实时消息传输
662 0
|
6月前
|
存储 传感器 定位技术
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
《移动互联网技术》 第四章 移动应用开发: Android Studio开发环境的使用方法:建立工程,编写源程序,编译链接,安装模拟器,通过模拟器运行和调试程序
78 0
|
6月前
|
设计模式 网络协议 Java
《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式
《移动互联网技术》 第十章 系统与通信: 掌握Android系统的分层架构设计思想和基于组件的设计模式
65 0
|
7月前
|
Android开发 iOS开发 流计算
Mac 安卓(Android) 安装 Genymotion 模拟器
Mac 安卓(Android) 安装 Genymotion 模拟器
343 0
|
7月前
|
监控 网络协议 Java
Android中使用JT808协议进行车载终端通信的实现
Android中使用JT808协议进行车载终端通信的实现
97 0
|
8月前
|
Android开发
Android手写占位式插件化框架之Activity通信、Service通信和BroadcastReceiver通信(二)
Android手写占位式插件化框架之Activity通信、Service通信和BroadcastReceiver通信
80 0
|
8月前
|
Android开发
Android手写占位式插件化框架之Activity通信、Service通信和BroadcastReceiver通信(一)
Android手写占位式插件化框架之Activity通信、Service通信和BroadcastReceiver通信
69 0
|
8月前
|
Android开发
Android ViewModel+LiveData实现Fragment间通信详解
Android ViewModel+LiveData实现Fragment间通信详解
101 0