无法使用Android Emulator与其他设备通信

无法使用Android Emulator与其他设备通信,android,android-emulator,Android,Android Emulator,我正在运行Android Emulator,当我尝试向设备发送文本消息时,它失败了,尽管我可以连接到internet和浏览web。最上面的一行说我在3G上,而不是Wi-Fi上。尝试在Android上测试基于短信的程序时,你必须模拟接收短信。幸运的是,有了SDK,您可以模拟到模拟器的SMS。我们只需使用telnet连接到emulator,就可以在那里模拟SMS。下面逐步模拟SMS: 启动emulator,您可以自由地给出选项,例如,只需在shell提示符下键入emulator。打开新的外壳并键入:

我正在运行Android Emulator,当我尝试向设备发送文本消息时,它失败了,尽管我可以连接到internet和浏览web。最上面的一行说我在3G上,而不是Wi-Fi上。

尝试在Android上测试基于短信的程序时,你必须模拟接收短信。幸运的是,有了SDK,您可以模拟到模拟器的SMS。我们只需使用telnet连接到emulator,就可以在那里模拟SMS。下面逐步模拟SMS:

启动emulator,您可以自由地给出选项,例如,只需在shell提示符下键入emulator。打开新的外壳并键入:

adb devices
了解所使用的端口模拟器。在给定机器上运行的第一个仿真器实例的控制台使用5554端口,上面的命令只是为了确保实例使用哪个端口。使用telnet命令连接到控制台,如:

telnet localhost 5554
来到shell后,您可以使用以下命令模拟sms:

sms send <phonesender> <text message>
sms发送

(希望你也能为蓝牙做到这一点,但可惜不是这样)

JPM的回答描述了如何模拟接收短信,但似乎你误解了短信的工作方式。它们不会通过互联网发送,或者至少不会在离开手机后立即发送。相反,它们在调用之间的帧中发送给服务提供商;因此,它们与您的手机使用标准数据连接下载网页或发送IM时不同。这也是为什么SMS消息要从您的数据计划中单独收费(而且收费过高)


Android仿真器说你使用的是3G,但实际上它连接到了一个模拟的3G连接,这个连接借助于你的计算机的互联网连接。该连接无法发送短信。

感谢您澄清我也注意到了这一点,但在没有解释模拟器如何工作的情况下,直接回答了他如何发送短信的问题。如何通过WhatApp和Yagattalk等应用程序发送短信。其他短信应用程序可能有其他方式发送短信,所以他们可能会工作。这取决于相关应用程序的实现。