在使用WKWebView的时候,有一个[WKContentView isSecureTextEntry]:的错误。后来看到了一种解决方法,故记录下来:
/**
处理WKContentView的crash
[WKContentView isSecureTextEntry]: unrecognized selector sent to instance 0x101bd5000
*/
+ (void)progressWKContentViewCrash {
if (([[[UIDevice currentDevice] systemVersion] doubleValue] >= 8.0)) {
const char *className = @"WKContentView".UTF8String;
Class WKContentViewClass = objc_getClass(className);
SEL isSecureTextEntry = NSSelectorFromString(@"isSecureTextEntry");
SEL secureTextEntry = NSSelectorFromString(@"secureTextEntry");
BOOL addIsSecureTextEntry = class_addMethod(WKContentViewClass, isSecureTextEntry, (IMP)isSecureTextEntryIMP, "B@:");
BOOL addSecureTextEntry = class_addMethod(WKContentViewClass, secureTextEntry, (IMP)secureTextEntryIMP, "B@:");
if (!addIsSecureTextEntry || !addSecureTextEntry) {
NSLog(@"WKContentView-Crash->修复失败");
}
}
}
/**
实现WKContentView对象isSecureTextEntry方法
@return NO
*/
BOOL isSecureTextEntryIMP(id sender, SEL cmd) {
return NO;
}
/**
实现WKContentView对象secureTextEntry方法
@return NO
*/
BOOL secureTextEntryIMP(id sender, SEL cmd) {
return NO;
}
OK !
![原文地址]: http://www.jianshu.com/p/7ef5814a871b