【发布时间】:2014-06-24 16:19:52
【问题描述】:
我正在为 iOS 7.0+ 制作后台跟踪 GPS 应用。
我在后台跟踪位置时遇到问题,它会在 5 分钟后被杀死,即使我们在高速公路中间,每秒 1 个位置也是如此。它在持续处于活动状态时不会被杀死。
这似乎只发生在 iOS 7.0 版本上,而不是更高版本。
我已经注册了 plist 位置后台活动。
我需要最大的准确性和最短的更新时间,所以我不使用显着更改方法,而是使用基本的startUpdatingLocation。此应用程序主要用于插入车内(电池不留情面)。
我将位置委托设置为应用委托,因此它不太容易被释放。
即使所有这些都完成了,仍然不可能让这个应用在后台运行超过 5 分钟。
我正在与 iOS 作斗争,它总能找到终止我的应用程序的方法,即使应用程序状态恢复也是如此。
所以问题是,有没有办法知道我的应用程序为什么被杀死?
对我没有帮助或没有响应我的需求以及我已经访问过的线程列表:
【问题讨论】:
-
您是否在后台使用该位置? (例如缓冲它,然后将其写入文件系统),还是仅使用该位置在地图上显示某些内容(因为在后台不可见)
-
您的应用是被终止了还是崩溃了?
-
它实际上已终止,因为我没有崩溃报告(HockeyApp)。我在后台不写入任何缓冲区或系统文件,只是在数组中插入位置。我应该使用延迟位置,但由于它可能在不启用延迟位置的设备上运行,我还没有优化代码。
标签: ios ios7 gps background-process ios7.1