OStack程序员社区-中国程序员成长平台

标题: ios - 如果后台应用程序无法自动启动 Cardcase 如何在位置更改时启动? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 18:37
标题: ios - 如果后台应用程序无法自动启动 Cardcase 如何在位置更改时启动?

Cardcase 应用程序可让您知道您是否前往与您有过往来的商店(如果您在那里设置了付款标签等)。

如果后台运行的应用程序无法在设备启动时自动启动,那么这个应用程序是如何工作的?

编辑以使我的问题更清楚:我不是在问如何监控位置变化或如何在后台监控位置变化。我的问题是,如果用户安装了这个应用程序,然后为某些位置添加了一些选项卡,然后他们重新启动了他们的 iPhone,那么如果不支持启动时启动应用程序,那么当他们接近某个位置时,这个应用程序如何随后通知他们?

此应用程序(以及任何其他应用程序)是否必须依赖于用户在每次设备重启后显式启动它?



Best Answer-推荐答案


您可以通过区域监控来做到这一点。您在 CLLocationManager 上使用此方法注册要监控的区域:

- (void)startMonitoringForRegionCLRegion *)region desiredAccuracyCLLocationAccuracy)accuracy

然后,即使您的应用程序没有运行,它也会在用户进入或离开该区域时在后台启动。

来自 Apple 的 docs :

If you begin monitoring a region and your application is subsequently terminated, the system automatically relaunches it into the background if the region boundary is crossed. In such a case, the options dictionary passed to the application:didFinishLaunchingWithOptions: method of your application delegate contains the key UIApplicationLaunchOptionsLocationKey to indicate that your application was launched because of a location-related event. In addition, creating a new location manager and assigning a delegate results in the delivery of the corresponding region messages.

编辑

刚刚用我自己的应用对此进行了测试。在离开办公室之前重新启动了我的手机,该应用程序像往常一样在我开车回家的路上启动了。所以是的,这绝对可以在重启后幸存下来。

希望对您有所帮助。

关于ios - 如果后台应用程序无法自动启动 Cardcase 如何在位置更改时启动?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8674214/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4