安装在两台设备上的Android应用相互通信的最佳方式是什么?设备可以直接连接而不使用短信吗?
答案 0 :(得分:18)
根据您的要求和设置,您有多种选择:
答案 1 :(得分:14)
您可以使用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
如果您要传输大量数据,则互联网套接字具有更大的数据容量并且速度更快。另一个优点是没有“超出范围”的事情。您可以在互联网可用的地方连接两个设备,而使用蓝牙,它们必须在彼此的蓝牙范围内
答案 2 :(得分:3)
您可以使用PubNub。它处理所有网络,你应该只关心消息。 它有很棒的API可供使用。
(感谢@Ian Jennings:Can we send data from an android device to another android device directly (p2p) without server in the middle?)
答案 3 :(得分:1)
取决于你在做什么。如果您有一台服务器,您可能会向其发送一些消息并将其从其他设备中提取(假设两个客户端都安装了该应用程序)。我认为这将是最直观的方式(但这实际上取决于你正在沟通的内容)。
短信和电子邮件可能有效,但您(或用户)需要知道与设备关联的数字/电子邮件才能执行此操作。
答案 4 :(得分:0)
答案 5 :(得分:0)
你应该看看WifiDirect
Wi-Fi点对点(P2P)允许Android 4.0(API级别14)或更高版本 具有适当硬件的设备直接连接到每个设备 其他通过Wi-Fi而没有中间接入点。
答案 6 :(得分:0)
正如已经建议的,如果您的设备都已连接到网络,则套接字是实现此目的的最简单方法。
这里有一些事情要完成:
有关完整的教程,您可以check this out
答案 7 :(得分:0)
ShortAnswer:是
数据可以直接发送。
按范围顺序: 1个蓝牙 2个wifidirect 3个。.GSM硬件直接吗?
之后,再次按范围顺序进行选择: 4系绳或网络 5互联网