首页 > 解决方案 > 使用 React Native 持久化地理位置数据

问题描述

我正在构建一个带有地理位置的应用程序。如果用户没有互联网连接,我需要将地理位置数据存储在应用程序中,然后在设备重新连接到互联网后将其作为 JSON 数组发送到 Web 服务器并清除本地存储的数据。

我正在考虑使用 AsyncStorage 存储数据,据我了解,它的工作原理类似于浏览器的 LocalStorage。我担心的是,如果我必须在每次地理位置更新时解析和序列化数据,可能会出现重大的性能问题。在 React Native 中存储高频生成的数据还有哪些其他可能性?

标签: reactjsreact-nativegeolocationstorage

解决方案


您可以使用领域数据库(https://realm.io/blog/introducing-realm-react-native),这对于本地存储大量数据的情况非常有用。

您可以在应用程序运行时将数据存储在应用商店(Redux 或 Mobx)中,并在退出应用程序或进入后台时将数据推送到领域数据库中。

当您的连接恢复时,您可以从领域数据库中检索数据并将其发送到您的服务器,您可以使用 NetInfo 来监听网络连接更改。


推荐阅读