GPS 没有 faker 或谷歌地图问题

问题描述 投票:0回答:0

我遇到了我在 React Native 中无法理解的问题。

我正在制作一个使用

react-native-geolocation-service
@supersami/rn-foreground-service
库的应用程序。

我正在尝试通过

Geolocation.watchPosition
使用这些设置在前台接收用户位置:

{
 accuracy: {
    android: 'high',
    ios: 'best',
  },
  enableHighAccuracy: true,
  distanceFilter,
  interval: 5000,
  fastestInterval: 2000,
  forceLocationManager: true,
  showLocationDialog: true,
  showsBackgroundLocationIndicator: true,
}

当我在后台使用假 gps 应用程序(android 案例)测试应用程序时,一切都很好,我的检查点(我正在与当前用户位置进行比较的纬度和经度点)已被收集,前台通知正在更新。

但情况是当我想摆脱模拟并进行真实测试时。 我在设置中给了

Always use location
并且我正在使用以下权限:

ACCESS_FINE_LOCATION
ACCESS_COARSE_LOCATION
ACCESS_BACKGROUND_LOCATION

现在我无法到达任何检查站,也没有我在通知中显示的不断变化的地理位置。

我在地理位置侦听器中使用

useRef
的值,没关系,当有导航或假gps运行时一切正常,所以我认为收集和更新前台通知的逻辑是正确的。

它似乎只有在其他东西使用本地化时才有效......

Case 仅适用于 Android,我使用的是 Android 12.

有人能解释一下我错过了什么吗?

提前谢谢你们!

编辑:我在循环中使用

getLocation
而不是
watchLocation
.

android react-native geolocation gps foreground-service
© www.soinside.com 2019 - 2024. All rights reserved.