使用 GeoFire 在 Firebase (React Native) 中保存当前位置

Using GeoFire to save current location in Firebase (React Native)

我正在尝试在我的 React Native 应用程序中使用 GeoFire 来获取当前经过身份验证的用户的位置,并将其作为 GeoLocation 保存在 Firebase 数据库中。我无法在网上的任何地方找到一个实际的工作代码示例来执行此操作。

这就是我正在尝试的:

var firebaseRef = firebase.database().ref().child("Users");
var geofireUser = geofire(firebaseRef);

这是我遇到的错误:

TypeError:  Attempted to assign to readonly property.

我在我的 Android Studio 应用程序中设置了这个并且 运行 很好,上面的等效代码将在用户的 UID 下在 Firebase 中创建以下数据:

DatabaseName:
  -Users
     -cdshnnHd8493jdNndi0
         -g:  fhejhe987
         -l:
             0: 0.324239
             1: 12.4587493

我只需要让 React Native 达到我再次在数据库中创建该代码的程度,它将为我解锁整个 GeoFire 命令范围,但我就是无法让它工作,而且有只是没有任何这些东西的资源。

根据 the Geofire documentation 你创建了一个新实例:

// Create a GeoFire index
var geoFire = new GeoFire(firebaseRef);

在您的代码段中,您似乎在尝试重新定义 geofire 模块本身,因此出现了消息。

如果您在使用 GeoFire 时遇到一些困难,我建议您使用 react-native-geolocation-service 包,它可以根据需要在 IOS 和 Android 平台上工作