Reputation: 2067
I am getting problem of posting a text to facebook
via share kit, it post successfully on facebook
and twitter when I select iphone 6.0
simulator but when I select iphone simulator 5.1
it ask me to login when I click login it goes to facebook
page where on the right top an OK button when I press OK button it again takes me to back page for login although I am already login I don't know why this error is occurring.
when I select iphone simulator 5.0
it give me exception
2012-12-28 10:35:16.084 SendQuote[431:c07] -[CFXPreferencesSearchListSource tryLock]: unrecognized selector sent to instance 0x80b42f0
2012-12-28 10:35:16.103 SendQuote[431:c07] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[CFXPreferencesSearchListSource tryLock]: unrecognized selector sent to instance 0x80b42f0'
*** First throw call stack:
(0x1b69052 0x1426d0a 0x1b6aced 0x1acff00 0x1acfce2 0x79c1770 0xf4aa39 0x1b34885 0x1b347a8 0xe8f1aa 0x59c169 0x5a48bd 0x5a51f8 0x598aa9 0x234bfa9 0x1b3d1c5 0x1aa2022 0x1aa090a 0x1a9fdb4 0x1a9fccb 0x234a879 0x234a93e 0x596a9b 0x2b3a 0x2a45 0x1)
terminate called throwing an exception(lldb)
here is my code for facebok share
case 1: // facebook
{
if(NSClassFromString(@"SLComposeViewController"))
{
SLComposeViewController *fbController = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];
SLComposeViewControllerCompletionHandler __block completionHandler=^(SLComposeViewControllerResult result){
[fbController dismissViewControllerAnimated:YES completion:nil];
switch(result){
case SLComposeViewControllerResultCancelled:
default:
{
NSLog(@"Cancelled.....");
}
break;
case SLComposeViewControllerResultDone:
{
ALERT_VIEW(@"Successfully posted to facebook.");
}
break;
}};
[fbController setInitialText:quotesss];
[fbController setCompletionHandler:completionHandler];
[self presentViewController:fbController animated:YES completion:nil];
}
else
{
DEFacebookComposeViewControllerCompletionHandler completionHandler = ^(DEFacebookComposeViewControllerResult result) {
switch (result) {
case DEFacebookComposeViewControllerResultCancelled:
NSLog(@"Facebook Result: Cancelled");
break;
case DEFacebookComposeViewControllerResultDone:
ALERT_VIEW(@"Successfully posted to facebook.");
break;
}
[self dismissViewControllerAnimated:YES completion:nil];
};
DEFacebookComposeViewController *facebookViewComposer = [[DEFacebookComposeViewController alloc] init];
self.modalPresentationStyle = UIModalPresentationCurrentContext;
[facebookViewComposer setInitialText:quotesss];
facebookViewComposer.completionHandler = completionHandler;
[self presentViewController:facebookViewComposer animated:YES completion:nil];
[facebookViewComposer release];
}
break;
}
Upvotes: 1
Views: 397
Reputation: 8256
Go to facebook.m class in your SDK find this method:
- (void)authorize:(NSArray *)permissions
delegate:(id<FBSessionDelegate>)delegate
Then replace your last line which is:[self authorizeWithFBAppAuth:YES safariAuth:YES];
With this line: [self authorizeWithFBAppAuth:YES safariAuth:NO; & then check.
Upvotes: 3