如何使用 React Native 创建像 Uber 这样的实时跟踪应用程序?
Posted
技术标签:
【中文标题】如何使用 React Native 创建像 Uber 这样的实时跟踪应用程序?【英文标题】:How to create real time tracking apps like Uber using react native? 【发布时间】:2020-02-05 04:35:14 【问题描述】:我正在使用 react-native 处理实时跟踪应用程序。 并希望 Uber 和 Swiggy 以及其他跟踪应用程序做到的准确性。 我正在使用react-native-geolocation-service,但没有像优步那样获得准确性。
我只想知道优步如何实时跟踪?他们是否每秒都请求服务器? 因为位置不断移动,这在我的应用程序中是不可能的。我每 15 秒保存一次坐标。
请建议我可以使用什么来制作准确的路径?
优步和其他跟踪应用程序用于跟踪什么?以及他们如何获取每一秒的实时数据?
【问题讨论】:
【参考方案1】:要获得实时位置,您可以使用https://www.navixy.com/ 等付费服务。我一年前就使用过这项服务,他们提供了许多功能来使用他们的 API 跟踪 android 设备。
【讨论】:
这不是本机程序,他们提供给您的 API 用于使用他们的系统。您正在将其实施到您的网络、桌面、移动设备等应用程序中。【参考方案2】:试试Firebase Realtime database 或cloud firestore。它的工作原理类似于实时数据更新。
只要位置发生变化,您就可以在 firestore/database 上存储 lat long,并且在一秒钟内您将能够在另一端获取这些数据。
在实时数据更新方面表现出色。一年前,我已经将它与一个本机应用程序一起使用。
对于本机反应,您可以使用具有watchposition 方法的Geolocation api。只要位置发生变化,就会调用它。
【讨论】:
我已经使用了 Geolocation api,但有时它获取的坐标离当前位置很远,这使得地图很奇怪,并且由于坐标错误,计算距离也有问题。以上是关于如何使用 React Native 创建像 Uber 这样的实时跟踪应用程序?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 React Navigation 创建像这样的中间选项卡按钮?
如何使用 java 后端在 react-native 中实现消息传递服务?
react-native:创建像 <group> <item /> <Item /> .. </group> 这样的组件