使用Google Map Tracks API

时间:2013-12-13 15:22:55

标签: google-maps google-maps-api-3 gps real-time

我必须开发一种车辆跟踪系统。我已经浏览了“Google Map API”和“Google Map Tracks API”教程。 I-E;

Google Map API (Web)

Google Map Tracks API

我的基本情景如下:

我们必须跟踪移动车辆的电话。移动设备上应该有一些应用程序可以获取其当前位置,并将此信息发送到某些服务器上的Web应用程序以进行监控。

我不是要求代码。我只是想知道

对于手机应用程序:我应该使用哪个部分(Google Map Tracks API或其他内容)?开发电话应用程序的最佳语言是什么?

对于Web应用程序:我应该使用Google Map API吗?开发Web部件的最佳语言是什么?

我唯一的困惑是为正确的设备选择合适的技术?我不确定Google Map Tracks API(它应该是电话应用程序或Web应用程序的一部分还是如何使用它?)

还有一件事,我试图在php中设置google map track api的身份验证部分,并使用google + acount凭据在我的localhost(桌面计算机)上成功验证。这也(php)可以在移动设备上运行吗?

注意:我愿意用任何语言进行开发。

1 个答案:

答案 0 :(得分:9)

如果您希望在手机上运行原生应用,则可以将Google Maps SDKs用于iOS或Android。 (如何开发iOS和Android应用程序超出了这个范围,但基本上Android使用Java,iOS使用Objective-C。)

您应该能够使用SDK获取设备的当前位置。

对于网络跟踪应用程序/界面(您将在其中查看设备移动/位置)我可能会使用与Firebase(firebase.com)处理数据的Node.js / Express / Google Maps JavaScript API堆栈 - 我将在下面解释的原因。

您可以绕过Google Tracks API并从Firebase查看GeoFire。它允许基于lat / long值实时跟踪资产,这些值被编码为“Geohashes”(在维基百科上阅读更多关于它们的信息)以提高速度和方便性。 Lat / long坐标被编码为单个字符串,使得单个位置/点易于在客户端解析。您应该能够创建多个“实体”。

但是,如果您需要访问Tracks API的“Collections”或“GeoFencing”功能;你可能需要坚持下去。 “Breadcrumbs”功能也很不错,但您可以使用Maps JavaScript v3 API以某种方式复制它。

因此,您的应用程序将以给定的时间间隔输出lat / log坐标(可能是数据/资源密集型,具体取决于您的实现,但我会说每3-5秒),存储它们(在Firebase上)并将它们转换为Geohashes。当Geohash写入数据库时​​,geoFire.js应解码客户端的字符串,它应该立即更新位置。当它使用新值更新时,它将提供“实时”效果(无需重新加载页面等)。

这是一个相当高级别的概述,但我希望它有所帮助。

一切顺利。