iOS应用程序在Core Location回调机制中崩溃

sqe*_*z3r 2 iphone cocoa-touch core-location crash-log ios

我在分析我的崩溃日志时遇到问题.当我点击应用程序图标启动应用程序时,iPhone有时会崩溃.该应用已在后台"运行",但它不活跃.这是符号化的崩溃日志:

Thread 0 Crashed:
0   libobjc.A.dylib     0x33479470 objc_msgSend + 28
1   CoreLocation                    0x3436f68e -[CLLocationManager onClientEvent:supportInfo:] + 98
2   CoreLocation                    0x3436f804 OnClientEvent + 16
3   CoreLocation                    0x3436b522 CLClientInvokeCallback(__CLClient*, CLClientEvent, __CFDictionary const*) + 42
4   CoreLocation                    0x3436cf74 CLClientHandleDaemonDataRegistration(__CLClient*, CLDaemonCommToClientRegistration const*, __CFDictionary const*) + 668
5   CoreLocation                    0x3436d4c8 CLClientHandleDaemonData(__CFMessagePort*, long, __CFData const*, void*) + 212
6   CoreFoundation                  0x33a813fe __CFMessagePortPerform + 242
7   CoreFoundation                  0x33a556f8 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 20
8   CoreFoundation                  0x33a556bc __CFRunLoopDoSource1 + 160
9   CoreFoundation                  0x33a47f76 __CFRunLoopRun + 514
10  CoreFoundation                  0x33a47c80 CFRunLoopRunSpecific + 224
11  CoreFoundation                  0x33a47b88 CFRunLoopRunInMode + 52
12  GraphicsServices                0x33b0e4a4 GSEventRunModal + 108
13  GraphicsServices                0x33b0e550 GSEventRun + 56
14  UIKit   0x32099322 -[UIApplication _run] + 406
15  UIKit                           0x32096e8c UIApplicationMain + 664
16  Norddeich                       0x00002764 main (main.m:14)
17  Norddeich                       0x00002718 start + 32
Run Code Online (Sandbox Code Playgroud)

据我了解堆栈跟踪,错误发生在main.m. 第14行是默认代码的一部分:

int retVal = UIApplicationMain(argc, argv, nil, nil);
Run Code Online (Sandbox Code Playgroud)

请给我一个提示,如何找到错误.
先感谢您!

hoh*_*oha 5

nil在从控制器(或至少在控制器中dealloc)返回之前,您是否将其设置为委托?我怀疑CLLocationManager正在尝试向已经解除分配的委托发送消息 - 这就是它在obj_msgSend崩溃的原因.