当应用程序处于非活动或关闭状态时,如何获取用户当前位置的纬度经度点?

时间:2018-10-26 07:48:32

标签: javascript react-native geolocation location expo

预先感谢..!

我正在使用react native expo开发一个应用程序,当应用程序是前台或后台或被杀死时,该应用程序需要跟踪用户的当前位置。

在任何状态下,我都需要跟踪用户的当前位置。

我尝试了一些代码并遵循了一些插件,但是没有用。

任何人都可以帮助我,如何使用react native在后台跟踪位置吗?

2 个答案:

答案 0 :(得分:0)

升级到Expo SDK v32.0.0 以使用此功能

您现在可以使用简单的javascript行在后台获取位置更新,还可以在设备离开或输入位置时触发地理围栏任务。

Upgrading您的SDK-进一步的步骤

升级您的应用程序- 关闭您的Expo CLI服务器

在app.json中,将sdkVersion更改为“ 32.0.0”

在package.json中,更改以下依赖项:

  • 与本机反应 “ https://github.com/expo/react-native/archive/sdk-32.0.0.tar.gz
  • 博览会到“ ^ 32.0.0”
  • 反应为“ 16.5.0” —(此精确版本)
  • 反应导航到“ ^ 3.0.9”(如果您使用的话—这也是可选的,    您无需对其进行更新即可使用最新的SDK。如果您选择    确保您阅读变更日志中的重大更改,并看到此内容    从v2升级到v3的升级指南。)
  • jest-expo转换为“ ^ 32.0.0”(如果使用的话)
  • sentry-expo设置为“〜1.9.0”(如果使用的话)

删除项目的node_modules目录,然后再次运行npm install(或使用Yarn,我们喜欢Yarn)

运行expo start -c

从App Store / Google Play更新手机上的Expo应用程序。 expo-cli将自动在模拟器中更新您的应用。

请务必检查本文的重大更改部分!

如果您以前构建了独立应用程序,请记住您将需要创建一个新版本来更新SDK版本。 准备好要提交到商店的新版本时,运行expo build:ios或expo build:android。

如果您打算将iOS应用提交到App Store,则必须升级到Xcode 10。

答案 1 :(得分:0)

我认为我们都同意这是“高度要求的功能”。问题是W3C,IETF,尤其是Jake Archibald拒绝承认它:-(

如果他们只是详细说明了TravelManager(类似于PushManager的后台通知),那么here就可以使用没有任何插件的Background Geolocations!

没有Cordova,没有Expo,没有PhoneGap,也没有Native App要求。

有人能解释为什么W3C和IETF只是拒绝吗?