在搜索了一段时间之后,我找到了一些有用的链接,并根据我的需求使用了这个部分解决方案:http://mobileoop.com/getting-location-updates-for-ios-7-and-8-when-the-app-is-killedterminatedsuspended
所以你可以更好地了解我的需求,我会在这里解释一下。我需要做的是不时向我的后端发送用户位置(通常是每分钟)。当应用程序在后台运行时以及当用户终止应用程序时,也必须发送这些位置。
通过以上链接,我的应用程序能够在iOS终止我的应用之前仅发送一段时间的位置。我的手机日志中打印了以下文字。
BKNewProcess:0x14554b60; my.app.bundle.id; pid:1539; hostpid:-1>超出允许时间的主动断言: {( BKProcessAssertion:0x14558a80> id:1539-3EF171FD-FFAD-4E67-9CE6-1D615E9479AD名称:由MyApplication调用,来自 - [BackgroundTaskManager beginNewBackgroundTask]进程:BKNewProcess:0x14554b60; my.app.bundle.id; pid:1539; hostpid:-1> allowedBackgroundDuration:180.000000 reason:finishTask owner pid:1539 preventSuspend preventIdleSleep preventSuspendOnSleep, BKProcessAssertion:0x14658370> id:1539-AA198F96-D8F4-4323-ABC2-E4447D9A4C87名称:由MyApplication调用,来自 - [BackgroundTaskManager beginNewBackgroundTask]进程:BKNewProcess:0x14554b60; my.app.bundle.id; pid:1539; hostpid:-1> allowedBackgroundDuration:180.000000 reason:finishTask owner pid:1539 preventSuspend preventIdleSleep preventSuspendOnSleep )}
所以我的问题是:这是正确的方法吗?如果是这样,我可能做错了什么?