iOS unrecognized selector crash 自修复技术实现与原理解析
作者介绍:阿里云-移动云-大前端团队。
前言
在开发中 unrecognized selector sent to instance XXXXX 是非常常见的 crash 类型。
例如调用以下一段代码就会产生crash
[[NSNull null] performSelector:@selector(fooDoesNotRecognizeSelector1)];
具体 crash 时的表现见下:
2018-01-11 16:28:04.433573+0800 CYLSwizzleMainDemo[13252:156773356] -[NSNull fooDoesNotRecognizeSelector1]: unrecognized selector sent to instance 0x102870ef0
2018-01-11 16:28: