如何在不使用本机ios应用程序的FBSDKShareDialog的情况下在facebook墙上共享照片或链接

如何在不使用本机ios应用程序的FBSDKShareDialog的情况下在facebook墙上共享照片或链接,ios,facebook,integration,Ios,Facebook,Integration,我想在不使用FBSDKShareDialog的情况下在用户Facebook墙上发布一些照片或链接。我已经使用facebook上的FBSDKSharePhoto和FBSDKShareDialog默认对话框发布了帖子。为此,我执行以下代码 FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init]; photo.image = self.imgView.image; photo.userGenerated = YES; FBSDKSharePhot

我想在不使用FBSDKShareDialog的情况下在用户Facebook墙上发布一些照片或链接。我已经使用facebook上的FBSDKSharePhoto和FBSDKShareDialog默认对话框发布了帖子。为此,我执行以下代码

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
photo.image = self.imgView.image;
photo.userGenerated = YES;
FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[photo];
[FBSDKShareDialog showFromViewController:self
                             withContent:content
                                delegate:(id)self];
但是,此代码将打开默认的FB对话框。那么,我如何直接将链接和照片发布到用户的墙上。

您可以使用默认的iOS社交框架

#import <Social/Social.h>

- (IBAction)postToFacebook:(id)sender {
    if([SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook]) {

        SLComposeViewController *controller = [SLComposeViewController composeViewControllerForServiceType:SLServiceTypeFacebook];

        [controller setInitialText:@"Post from my iPhone app"];
        [controller addURL:[NSURL URLWithString:@"http://www.yourlink.com"]];
        [controller addImage:[UIImage imageNamed:@"facebook-image.jpg"]];
        [controller setCompletionHandler:^(SLComposeViewControllerResult result) {

        switch (result) {
             case SLComposeViewControllerResultCancelled:
                 NSLog(@"Post Canceled");
                 break;
             case SLComposeViewControllerResultDone:
                 NSLog(@"Post Sucessful");
                 break;

             default:
                 break;
         }
        }];
        [self presentViewController:controller animated:YES completion:Nil];

    }
}
#导入
-(iAction)postToFacebook:(id)发件人{
如果([SLComposeViewController可用于服务类型:SLServiceTypeFacebook]){
SLComposeViewController*控制器=[SLComposeViewController ComposeViewController服务类型:SLServiceTypeFacebook];
[controller setInitialText:@“从我的iPhone应用程序发布”];
[控制器地址URL:[NSURL URLWithString:@”http://www.yourlink.com"]];
[控制器addImage:[UIImage ImageName:@“facebook image.jpg”];
[控制器setCompletionHandler:^(SLComposeViewControllerResult结果){
开关(结果){
案例SLComposeViewController结果已取消:
NSLog(@“取消发布”);
打破
案例SLComposeViewController结果完成:
NSLog(“成功后”);
打破
违约:
打破
}
}];
[自我呈现视图控制器:控制器已设置动画:是完成:无];
}
}
Facebook共享文档:

通过图形API:

(一)

(二)


3)

这与FBSDKSharedialog的工作原理相同。但为此,我们必须有登录系统facebook帐户。如果没有登录sysytem帐户,这是不工作的,@Hirenkanetiya是的,你必须从设置中使用facebook帐户登录。他们有没有办法使用FBSDK图形API?在最新的FacebookSDK中发布,请建议。如果我能找到,我会告诉你。你说没有FBShareDialog。是的,没有FBShareDialog,我想使用FBSDKOpenGraph Api来共享照片和链接…因为这样我们就不需要每次登录系统帐户。