【发布时间】:2018-02-17 18:43:18
【问题描述】:
我想检索一个安卓设备的 GPS 位置并将其实时获取到另一台安卓设备。我浏览了很多资源,才知道它可以使用 GCM、FCM、套接字或轮询来实现。但是 GCM 或 FCM 无法提供实时更新,轮询会导致更多的电池消耗。对于 Sockets 我已经完成了 socket.io 实现,但我不知道它是否是完美的实现。因此,请提供有关如何更好地实施的建议。
现在另一种情况是,如果多个用户通过同一个套接字连接到服务器,那么我们如何确定哪个用户正在监视谁?
请帮忙...
【问题讨论】:
-
还有其他类别的应用程序提供设备之间的实时数据交换。聊天就是一个例子。因此,您可能会考虑研究聊天应用程序使用什么(XMPP、WebRTC、WebSockets 等)并考虑使用其中一种技术。我们无法为您的 socket.io 代码提供帮助,因为我们看不到它。
-
大多数聊天应用程序都实现了 FCM 或 GCM,但在我的情况下,我需要实时执行相同的操作,这可以通过套接字或其他实现来完成。实现套接字的聊天应用程序是通过 socket.io 完成的,但 socket.io 以广播方式完成,适用于聊天室,但不适用于私人聊天。
-
“实现套接字的聊天应用程序已通过 socket.io 完成”——这是不正确的。聊天应用程序可以使用多种协议。我在之前的评论中提到了三个:XMPP、WebRTC 和 WebSockets。其中,Socket.IO 可以帮助 WebSockets,但它不是唯一的 WebSocket 选项。 Socket.IO 可以帮助其他传输机制(例如,长轮询)。因此,与其将自己限制在 Socket.IO,不如考虑对其他现有应用使用什么进行更多研究。
-
你也可以看看MQTT。
标签: android sockets socket.io android-location android-gps