我正在更新使用ShareKit分享到Facebook和Twitter的现有IOS应用程序。我已经集成了ShareKit 2.0并遵循了所有说明。我在IOS 6下分享到Facebook和Twitter没有任何问题。
然而,在IOS 5上,Twitter工作正常,但Facebook却没有。这是我看到的行为:
2013-03-25 15:04:57.570 APPNAME [72699:c07] - [__ NSCFDictionary setObject:forKeyedSubscript:]:无法识别的选择器发送到实例0xb468f30
2013-03-25 15:04:57.596 APPNAME [72699:c07] * 由于未捕获的异常终止应用' NSInvalidArgumentException',原因:' - [ __NSCFDictionary setObject:forKeyedSubscript:]:无法识别的选择器发送到实例0xb468f30'
* 第一次抛出调用堆栈:
(0x6e6022 0x1fbbcd6 0x6e7cbd 0x64ced0 0x64ccb2 0x1e7818 0x1e7396 0x1e2587 0x1c6c00 0x1c6413 0x1dd0aa 0x1db4ad 0x1d7729 0x1e0263 0x1e0999 0x17c6a49 0x17c4e84 0x17c5ea7 0x17c4e3f 0x17c4fc5 0x1709f5a 0x94aa39 0xa17596 0x941120 0xa17117 0x940fbf 0x6ba94f 0x61db43 0x61d424 0x61cd84 0x61cc9b 0x24a87d8 0x24a888a 0xdc3626 0x23b9 0x22f5) 终止调用抛出异常(lldb)
我试过打开调试但没有得到帮助。
非常感谢任何帮助!
干杯,
答案 0 :(得分:1)
我在过去遇到了类似的问题,并且相信它会在iOS 6之前没有添加选择器,可能会看到这个堆栈交换线程:
dequeueReusableCellWithIdentifier error in my UITableView in iOS5
答案 1 :(得分:1)
您需要在AppDelegate中实现以下内容
-(BOOL) application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation
{
NSString* scheme = [url scheme];
if ([scheme hasPrefix:[NSString stringWithFormat:@"fb%@", SHKCONFIG(facebookAppId)]]) {
return [SHKFacebook handleOpenURL:url];
}
return YES;
}
在Safari恢复您的应用程序的情况下,ShareKit将显示对话框以输入共享消息,您将能够发送它。