从手机发送地图坐标到手机

时间:2017-08-07 05:08:04

标签: google-maps gps real-time

我们正在IOS和Android中创建实时GPS跟踪器应用。我们希望从B的地图中看到A的实时位置(就像在UBER中,我可以看到驱动程序的位置)。我们现在可以获取A的坐标,但是我们应该如何实时将它发送给B?我们还应该使用数据库来获取和发送坐标吗?或者有没有办法将坐标从手机发送到手机?

2 个答案:

答案 0 :(得分:1)

看起来你需要一个双向数据通道或一个非常快速的无数据库。

首先,关于双向数据通道。您可以使用socket.io,其中您有一个非常简单的节点服务器来支持双向数据通道。或者您可以使用WebRTC,它不是为此目的而构建的,但您仍然可以利用数据通道来实现目标。然而,无论哪种方式,它主要使用UDP连接完成,换句话说,这意味着它不可靠。您无法确保对方收到坐标。

另一方面,第二个解决方案,一个非常快速的无SQL数据库,可能会更好地与您的应用程序保持一致。如果从头开始构建服务器,则仍需要socket.io来监视数据库中的更改并通知双方(如果使用https请求,它甚至不会接近实时)。您可以让它们更新坐标,例如,像/root/geolocation/{room-hash}/coords这样的引用,并让双方使用socket.io连接监视相同的ref。

如果您没有从头开始构建实时服务器的经验,只想完成您的应用程序。你可以查看我认为是一个相当快的数据库的firebase。您可以在android / ios代码中使用firebase库。如果您已经编写了本机代码并且不想更改它。使用firebase云功能并进行api调用。

答案 1 :(得分:0)

您需要实时通信机制才能将A位置发送到B客户端。像websocket(例如:socket.io)或某些消息传递协议(例如:MQTT.org)之类的东西可以帮助你。