unrecognized selector sent to instance的定位

造成unrecognized selector sent to instance的原因很多,对象被提前release、引用的实例的方法不存在了或者这个方法在类中没有实现等等。控制台仅是简单的告诉你出现此种错误,随后一堆堆堆栈相关的地址。

  这时想快速定位BUG的话,定制DEBUG断点是一个相比较好的办法,因为更好的我还没想到。

  OK,废话少扯,步骤如下:
  1.在Xcode的菜单栏中选择Debug->Breakpoints->Create Symbolic Breakpoint点击后,会添加一个断点调试,弹出编辑框

  2.在编辑框的Symbol中填写-[NSObject(NSObject) doesNotRecognizeSelector:]此方法签名,对于边看本博文边试验的同学来说,在复制方法签名后想粘贴的时候,发现Xcode中的编辑框不见了,此时右击刚才添加的那个断点,选择Edit Breakpoint即可。

  3.运行代码,断点就会停留在导致崩溃的地方。

时间: 2024-09-30 05:10:44

unrecognized selector sent to instance的定位的相关文章

UNRECOGNIZED SELECTOR SENT TO INSTANCE 问题快速定位的方法

开发中常见的一类崩溃错误是遇到:unrecognized selector sent to instance 0xaxxxx…而backtrace又无法明确说明错误在哪行代码,如何快速定位BUG呢? 有时读代码一下很难找到是哪个instance出的问题,这时定制有效的DEBUG断点是最好的办法,方法如下: 在Debug菜单中选择 Breakpoints -> Create Symbolic Breakpoint… 在Symbol中填写如下方法签名: 1 -[NSObject(NSObject)

利用objc的runtime来定位次线程中unrecognized selector sent to instance的问题

昨天遇到一个只有一行错误信息的问题: -[NSNull objectForKey:]: unrecognized selector sent to instance 0x537e068 由于这个问题发生在次线程,所以没有太有用的堆栈信息,而是只有简单的SIGABRT信息: 考虑到unrecognized selector sent to instance这类问题是由于向某个对象发送了未实现的消息,这个过程大致如下(图片摘自这里): 参考Objective-C的对象模型: struct objc_

iOS中的crash防护(一)unrecognized selector sent to instance

专栏开篇: 在开发的过程中,作开为发者我们经常会遇到崩溃,闪退的情况,而且崩溃,闪退的情况有很多种.如果是在开发测试过程中的话,我们可以及时进行分析修复,但是对于我们的KPI还是会一有定的影响的,给导领留下的印象不佳.而且定位crash仍然需要花费很多的时间.如果崩溃,闪退发生在线上,那么对我们公司的产品影响更大,对我们的影响也是大的不行,轻则挨骂,重则扣工资.而且线上crash难以追踪定位,相信大家都深有体会.如果有一种机制,能够将常见的大多数crash给屏掉蔽,不会crash,而且可以发送c

Unrecognized Selector Sent to Instance问题之诱敌深入关门打狗解决办法

? MAY 17TH, 2014 前不久在微博上看到一篇文章,<UNRECOGNIZED SELECTOR SENT TO INSTANCE 问题快速定位的方法>?其中讲了iOS unrecognized selector sent to instance问题的快速定位方法,方法是不错的,但是实际测试发现文中的方法并非万能,从我自身的经历以及文中的评论看都有不能解决的情况. 出现unrecognized selector sent to instance问题,大部分是因为对象被提前释放,指针变

出现“unrecognized selector sent to instance”问题原因之一及解决方法。

? 对于iPhone开发初学者来说,很想实现自己在iPhone上的第一个小程序,准备工作就绪侯就信心满满的开始了!一般来说大家可能都是从Hello World做起吧. 反正我是的,:),如果按照文档上的说明去做,一般也不会出现什么问题.也建议初学者这样开始,毕竟会增强我们自己的信心. 但是当我们自己独立去做一个Button实现响应事件的小程序的时候,有时候确给我们出现了一点点小问题.也就是我题目所说的.下边我就列出出现此问题的 错误代码以及解决方式. code: [cpp] view plain

(未解决)[NSNull intValue]: unrecognized selector sent to instance 0x375c9860

今天遇到这个问题,程序崩溃了……日志如下: -[NSNull intValue]: unrecognized selector sent to instance 0x375c9860*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[NSNull intValue]: unrecognized selector sent to instance 0x375c9860' ***

[__NSCFNumber isEqualToString:]: unrecognized selector sent to instance 0x7a97d4c0&#39;报错

今天接口由get换成post,我去改进行登录但出现了这个错误,首先出错先看能不能与服务器交互,能不能获得数据,其次,获得的数据是不是你想要的,记住,首先出错要想到是自己的问题,还有就是程序崩了要学会自己解决,打断点找原因,一步步跟,看是哪里出了问题 我这个问题一看就是拿了NSCFNumber类型和NSString类型做了比较,由于不会响应isEqualToString方法而报错,所以只要转换一下就可以了 NSString *factory_id = [NSString stringWithFor

unrecognized selector sent to instance

[iOS] Error Fixed : [__NSArrayI addObject:]: unrecognized selector sent to instance 当我创建了一个NSMutableArray 对象的时候 @property (nonatomic,copy)NSMutableArray *children; 然后通过addObject运行就会报错,[__NSArrayI addObject:]: unrecognized selector sent to instance 解决

__NSArrayI removeObjectAtIndex:]: unrecognized selector sent to instance

同样是删除cell问题,帮我看看问题出现在哪,谢谢! 我的类文件myFile是继承UIViewController的(目的是为了能够在一个view里切换不同的tableView),在myFile.h中定义一个可变数组editContactsList,然而在IB里面添加了一个view,两个tableView,在下面方法里面报错(有注明具体位置)- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCell