我有一个应用程序可以通过 CoreLocation 的显着变化通知功能来监控位置变化,这很好用,因为我只需要在位置变化很大时了解位置变化,例如进入不同的县或类似事件。
我的问题是我需要知道用户是否在某个位置停留了很长时间,因此如果用户在一个地方停留一天或一周,我需要每天都收到通知。
CoreLocation 是否提供该信息?如果没有,有人对如何实现这一点有什么建议吗?
最佳答案
不,Core Location 不提供这样的功能。
IIRC,你不能这样做,因为你不能在后台使用应用程序启动定位服务(例如,如果你发送静默推送通知,你无法静静地获取位置)。不过,您可以自己测试这种潜力(我现在找不到它的文档)。您需要停止并重新启动定位服务,它需要“立即”更新您并继续更新重大更改。
另一种方法是使用本地通知请求用户打开应用程序。显然,您不能依赖用户实际这样做...
关于iOS 重大变更频率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22984822/