- [__ NSCFString postUpdatesIfNecessary]:无法识别的选择器发送到实例xxx

时间:2013-09-16 12:02:42

标签: ios core-telephony

我有一个奇怪的堆栈跟踪,我无法象征。我google了一下,显然postUpdatesIfNecessary是Core Telephony Framework的一部分。我无法弄清楚的是这个方法何时被调用。我没有在苹果文档或我的代码中找到它,所以我认为它必须是私有的。有没有人知道这个bug可能来自哪里?

-[__NSCFString postUpdatesIfNecessary]: unrecognized selector sent to instance xxx

0   CoreFoundation                      0x327c52a3 <redacted> + 162
1   libobjc.A.dylib                     0x3a46a97f objc_exception_throw + 30
2   CoreFoundation                      0x327c8e07 <redacted> + 170
3   CoreFoundation                      0x327c7531 <redacted> + 392
4   CoreFoundation                      0x3271ef68 _CF_forwarding_prep_0 + 24
5   CoreTelephony                       0x32e0c89d <redacted> + 32
6   CoreFoundation                      0x3279a5df <redacted> + 14
7   CoreFoundation                      0x3279a291 <redacted> + 272
8   CoreFoundation                      0x32798f01 <redacted> + 1232
9   CoreFoundation                      0x3270bebd CFRunLoopRunSpecific + 356
10  CoreFoundation                      0x3270bd49 CFRunLoopRunInMode + 104
11  GraphicsServices                    0x362cf2eb GSEventRunModal + 74
12  UIKit                               0x34621301 UIApplicationMain + 1120
13  MyApp                               0x000156a3 main + 110
14  MyApp                               0x00015630 start + 40

1 个答案:

答案 0 :(得分:0)

错误unrecognized selector sent to instance意味着,您用来调用方法postUpdatesIfNecessary的对象是类型转换为NSCFString及其颠覆NSStringpostUpdatesIfNecessary不是NSString类的选择器(方法)。

要进行验证,请尝试对象的NSLog类。

就像NSLog(@"Class %@", [object class]);这里一样,object是postUpdatesIfNecessary方法的调用者。