Ios 什么是[\uu NSCFString base64String]:发送到实例的无法识别的选择器?
Ios 什么是[\uu NSCFString base64String]:发送到实例的无法识别的选择器?,ios,objective-c,Ios,Objective C,[\uu NSCFString base64String]:尝试开发推送通知时发生发送到实例的无法识别的选择器。 这是整个错误日志 -[__NSCFString base64String]: unrecognized selector sent to instance 0x165263e0 2015-07-22 15:52:20.441 xxxx[1623:362933] *** Terminating app due to uncaught exception 'NSInvalidArgume
[\uu NSCFString base64String]:尝试开发推送通知时发生发送到实例的无法识别的选择器。
这是整个错误日志
-[__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 DidRegisterForRemotonificationswithDeviceToken:deviceToken]代码>
为什么不知道是否发生了此错误。
请告诉我应该如何…无法识别的选择器发送通常发生在您调用特定方法时&代码中没有该方法
试试下面的东西
- 尝试在代码中查找
base64String
方法李>
- 添加异常断点&然后运行代码
- 还要查看是否在正确的对象上调用
base64String
希望对你有帮助 在我看来,您似乎已经添加了类别头文件NSString+Base64.h
和NSData+Base64.h
,但您尚未链接到相应的实现(.m
)文件中
将NSString+Base64.m
和NSData+Base64.m
添加到Xcode目标,这可能很好地解决您的问题
但是,如果这些实现对象文件是库的一部分,则可能需要将-ObjC
添加到其他链接器标志。stacktrace不足。这对你和我们都没有好处。在过帐前对其进行符号化。找不到base64string#导入“NSData+Base64.h”#导入正在使用的“NSString+Base64.h”。我不知道是否有什么问题。请将所需的“NSData+Base64.h”添加到您的项目中。参考链接