如果一个安装在两个设备上的Android应用程序想要相互通信,最好的方法是什么?是否可以在不使用短信的情况下直接连接设备?
如果一个安装在两个设备上的Android应用程序想要相互通信,最好的方法是什么?是否可以在不使用短信的情况下直接连接设备?
根据您的需求和设置,有几种选择:
你可以使用BluetoothSockets通过蓝牙将它们连接起来。Android开发者网站上有相当好的文档。
http://developer.android.com/guide/topics/wireless/bluetooth.html
或者如果您愿意(并且两个设备都联网),您可以使用常规Socket。
对于服务端,http://developer.android.com/reference/java/net/ServerSocket.html;对于客户端,http://developer.android.com/reference/java/net/Socket.html
如果要传输大量数据,则Internet Socket具有更大的数据容量,并且传输速度更快。另一个优点是没有“超出范围”的概念。只要有互联网,您就可以在两个设备之间建立连接,而蓝牙则必须在蓝牙范围内才能连接。
取决于你所做的事情。如果你有一个服务器,你可以发送一些消息给它,并让另外一个设备拉取它(假设两个客户端都安装了该应用程序)。我认为这可能是最直观的方式(但这确实取决于你正在传达什么信息)。
短信和电子邮件也可能有效,但你(或用户)需要知道与设备相关的号码/电子邮件地址才行。
正如已经建议的那样,如果您的设备都连接到一个网络上,那么使用套接字是实现这一点最简单的方法。
这里有几件事情需要完成:
您可以查看此处以获取完整的教程。
你应该看一下WifiDirect
Wi-Fi点对点(P2P)允许具有适当硬件的Android 4.0(API级别14)或更高版本的设备通过Wi-Fi直接连接到彼此,而无需中间接入点。
简短回答:是的
数据可以直接发送。
按范围顺序: 1 蓝牙 2 Wi-Fi Direct 3 也许...GSM硬件直接传输?
之后,再次按范围顺序提供选项: 4 网络共享或网络连接 5 互联网