I\'m trying to test out the new built-in share \"sheet\" for Facebook on iOS 6 but when I run the sample code it doesn\'t show the sheet. Instead it posts a status for me wi
Did you set up the Facebook account on the device/simulator (under Settings->Facebook)?
The native sheet dialogs are only presented when the app is running on ios 6 AND the user is authenticated through the ios 6 Facebook account. Otherwise, the handler does report that error and the presentShareDialogModallyFrom returns "NO". Also, the FBNativeDialogResult result in the handler will equal FBNativeDialogResultError.
Make sure you're not opening sessions using deprecated methods (ie.openActiveSessionWithPermissions instead of the newer openActiveSessionWithReadPermissions/openActiveSessionWithWritePermissions) or the facebook sdk won't use native facebook integration (ie. native dialogs)
You are missing some of the required frameworks:
AdSupport.framework
Account.framework
Social.framework
BOOL displayedNativeDialog =
[FBNativeDialogs
presentShareDialogModallyFrom:self
initialText:self.shareText
image:nil
url:nil
handler:^(FBNativeDialogResult result, NSError *error) {
if (error) {
/* handle failure */
NSLog(@"error:%@, %@", error, [error localizedDescription]);
} else {
if (result == FBNativeDialogResultSucceeded) {
/* handle success */
NSLog(@"handle success");
} else {
/* handle user cancel */
NSLog(@"user cancel");
}
}
}];
if (!displayedNativeDialog) {
/* handle fallback to native dialog */
}