我一直在开发一个应用程序,它基本上是一个旅行应用程序,它使用GPS和位置管理器。问题是,当我开始旅程并将应用程序保留在后台时,一段时间后它会自动终止,当我再次打开应用程序时,它会再次从启动开始。任何人都可以告诉我发生了什么以及如何避免它。
对于后台模式,我使用了“App register for location updates”
任何帮助都将不胜感激。
答案 0 :(得分:0)
我理解,因为我也面临同样的问题。现在你需要做什么
NSTimer
UIApplication:beginBackgroundTaskWithExpirationHandler:
如果n小于UIApplication:backgroundTimeRemaining
,它确实可以正常工作,如果n较大,应该在没有剩余时间之前再次启用(和禁用)位置管理器以避免背景任务被杀死。
答案 1 :(得分:0)
两件事:
如果您使用CLLocationManager注册重要更改更新,即使您的应用未运行,您也会定期醒来。
[locationManager startMonitoringSignificantLocationChanges];
尝试使用kCLLocationAccuracyBestForNavigation的准确性来保持应用程序在后台持续唤醒。已经有一段时间了,但是我记得应用程序在背景中没有保持清醒,精度设置较低。