React Native 中的地理定位精度

Geolocation accuracy in React Native

我想在我的应用程序中使用两个地理位置观察器。一种具有 useSignificantChanges,一种具有高精度。

"lowres" 观察者会一直为我的 Redux 商店提供大概位置,而 "highres" 观察者会在用户在实时视图中工作时启用。

以下是低分辨率观察者的选项

const options = {
  enableHighAccuracy: false,
  useSignificantChanges: true,
  distanceFilter: 500,
};

以及高分辨率观察者:

const options = {
  enableHighAccuracy: true,
  timeout: 60e3,
  maximumAge: 10e3,
};

我试过这些设置,但我看不出输出有什么不同。两个观察者同时发出完全相同的位置。我目前正在使用 iOS 模拟器。

问题:

编辑,实际问题是: 为什么即使在 "significant changes" 模式下我也能频繁获得准确的 gps 位置。如果我理解正确的话,这种模式应该可以节省电池电量。

谢谢!

useSignificantChanges 选项是 fairly new 并且最近才实施,因此您需要确保:

  1. 您正在使用支持它的 React Native 版本。根据合并日期,看起来是 v0.47+
  2. 您正在测试可以使用它的 iOS 版本。 Github issue 指出这是影响 iOS 11 的新功能,因此我认为您至少需要该版本才能看到任何差异。