崩溃报告详情:
Exception Type: 00000020
Exception Codes: 0x8badf00d
Highlighted Thread: 3
Application Specific Information:
MyApp[123] has active assertions beyond permitted time:
{(
<SBProcessAssertion: 0x4b52f0> identifier: CoreLocationBackgroundClient process: MyApp[579] permittedBackgroundDuration: 600.000000 reason: finishTask owner pid:123 preventSuspend preventIdleSleep
)}
Elapsed total CPU time (seconds): 13.980 (user 13.980, system 0.000), 1% CPU
Elapsed application CPU time (seconds): 0.251, 0% CPU
和第3个主题是:
Thread 3 name: com.apple.NSURLConnectionLoader
Thread 3:
0 libsystem_kernel.dylib 0x30e67004 mach_msg_trap + 20
1 libsystem_kernel.dylib 0x30e671fa mach_msg + 50
2 CoreFoundation 0x381ea3ec __CFRunLoopServiceMachPort + 120
3 CoreFoundation 0x381e9124 __CFRunLoopRun + 876
4 CoreFoundation 0x3816c49e CFRunLoopRunSpecific + 294
5 CoreFoundation 0x3816c366 CFRunLoopRunInMode + 98
6 Foundation 0x373a7bb2 +[NSURLConnection(Loader) _resourceLoadLoop:] + 302
7 Foundation 0x373a7a7a -[NSThread main] + 66
8 Foundation 0x3743b58a __NSThread__main__ + 1042
9 libsystem_c.dylib 0x333c972e _pthread_start + 314
10 libsystem_c.dylib 0x333c95e8 thread_start + 0
该应用程序使用GPS。知道为什么会发生这起事故吗?
答案 0 :(得分:1)
看起来好像你正在使用错误的后台处理。 600秒就是赠品。这表明您正在使用任务完成API,它为应用程序提供了有限的时间(目前为十分钟),以便在暂停之前完成某些活动。
如果您想在后台继续监控GPS位置,则需要使用特定的核心位置API(并在Info.plist中设置相应的标记)。