[__NSCFString base64String]: unrecognized selector sent to instance occurred
尝试开发推送通知时。
这是整个错误日志。
-[__NSCFString base64String]: unrecognized selector sent to instance 0x165263e0
2015-07-22 15:52:20.441 xxxx[1623:362933] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString base64String]: unrecognized selector sent to instance 0x165263e0'
*** First throw call stack:
(0x22705fef 0x30da9c8b 0x2270b409 0x22709327 0x22638e78 0x1caa99 0x1c4ba7 0x1bf7ed 0x1bf633 0x1af1d9 0x1ae757 0x1bec3f 0x1c64ed 0x13fdfd 0x260ea37b 0x260eb22d 0x2717d8f3 0x226cb7cb 0x226cb767 0x226c9d69 0x22616201 0x22616013 0x2a0e7201 0x25de2a09 0x145965 0x3135baaf)
libc++abi.dylib: terminating with uncaught exception of type NSException
以下是来源。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[xxxx startSDKWithAppKey:@"xxxxxxxxxxxxxxxxxxxxxxxxxxxx" host:nil logEnabled:YES sandboxEnabled:NO];
[xxxx setDelegate:self];
[xxxx setSPTag:@"xxxx App"];
[xxxx handleApplication:application didFinishLaunchingWithOptions:launchOptions];
application.applicationIconBadgeNumber = 0;
return YES;
}
#pragma mark APNS notification
- (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken
{
[xxxx handleApplication:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
}
消除这些部分很好。
[xxxx handleApplication:application didRegisterForRemoteNotificationsWithDeviceToken:deviceToken];
为什么不知道是否发生此错误。 请告诉我应该怎么做......
答案 0 :(得分:1)
无法识别的选择器已发送通常在您调用特定方法&你的代码中没有。
尝试下面的事情,
base64String
方法。 base64String
。希望它对你有所帮助。
答案 1 :(得分:1)
我认为您已经添加了类别标题文件NSString+Base64.h
和NSData+Base64.h
,但您没有链接相应的实现(.m
)文件。
将NSString+Base64.m
和NSData+Base64.m
添加到Xcode目标,这可能很好地解决您的问题。
但是,如果这些实现对象文件是库的一部分,那么您可能需要将-ObjC
添加到其他链接器标志。