如果没有反应,可以在Android和/或iOS的背景任务中收集地理位置信息



即使手机被锁定,也可以通过监视GPS位置执行背景任务(不在背景中运行整个应用程序)吗?我想在手机处于某种位置时在屏幕上显示一些信息(通知)。

我需要在我的研究中声明项目的主题,但是我不知道是否可以实施此功能。

最肯定的是...如果您只有一个给定的位置(或少于20个位置),那么最好使用的是CoreLocation的地理位置API!

您可以设置这样的区域:

if CLLocationManager.isMonitoringAvailable(for: CLCircularRegion.self) {
    // Register the region.
    let region = CLCircularRegion(
        center: center, 
        radius: maxDistance, identifier: identifier
    )
    region.notifyOnEntry = true
    locationManager.startMonitoring(for: region)
}

(假设您已经请求并检查了用户的位置权限)!

,每当发生区域监视事件时,您的应用将在后台启动,因此您必须确保设置新的CLLocationManager并给它委托以接收您的application(_application:didFinishLaunchingWithOptions)功能中的更新!

然后,您可以使用委托回调来触发本地通知。

这里有一个小警告,如果用户已禁用您的应用程序的背景应用程序刷新!

幸运的是,已经有一个反应库,可以让您设置以下区域:https://github.com/martijndeh/reaeact-native-region-monitor。不幸的是,我确实认为,当通知通过时,它将完全启动您的JavaScript应用程序(当然在背景中),但这并不是太大的问题。

也可能有有关如何在Android上实现此功能的GitHub的信息!

相关内容

  • 没有找到相关文章

最新更新