在ios Facebook SDK

时间:2015-10-14 13:46:34

标签: ios iphone facebook facebook-graph-api

我几天来一直反对这一点 - 我想要做的就是分享我在Facebook上的iOS应用程序中创建的图像,并以某种方式记入应用程序。

我无法添加任何内容,因为他们不允许这样做 - 我可以在图片底部添加横幅,但这会破坏体验。我真正想要的就是说出我的应用程序的名称以及共享 - 但我有一段时间让它工作。

通过包含相关的SDK文件并执行此操作,我可以非常轻松地完成共享工作:

FBSDKSharePhoto *photo = [[FBSDKSharePhoto alloc] init];
photo.image =_imgMainImage.image;
FBSDKSharePhotoContent *content=[[FBSDKSharePhotoContent alloc]init];
content.photos=@[photo];
[FBSDKShareDialog showFromViewController:self withContent:content delegate:nil];

但是当分享出现在Facebook上时,它或者归因于iOS,或者根本没有。

在确保用户登录后,我发现我实际上可以将其归因于我的应用程序的唯一方法是使用FBSDKShareAPI。为此,我需要让用户登录并授予我发布权限,为此,我需要让我的应用程序获得Facebook等批准 - 所有这些都是我认为不应该是必要的。

如果我使用FBSDKShareDialog,我是否会认为它应归因于我的应用程序?或者它是否设计它没有,我需要以更迂回的方式使用登录和FBSDKShareAPI或其他图形方法?前者将是一个更容易实现和更好的用户体验,只要它可以工作!

我在info.plist中找到了正确的东西(我认为这是因为它在FBSDKShareAPI方法的情况下正确地归因于app)。

谢谢! 丹

1 个答案:

答案 0 :(得分:0)

为了让应用名称显示在Facebook上的帖子中,你必须分享它做这样的事情:

FBSDKSharePhoto *sharePhoto = [[FBSDKSharePhoto alloc] init];
sharePhoto.caption = @"Some caption";
sharePhoto.image = [UIImage imageNamed:@"my_photo.jpg"];

FBSDKSharePhotoContent *content = [[FBSDKSharePhotoContent alloc] init];
content.photos = @[sharePhoto];

[FBSDKShareAPI shareWithContent:content delegate:self];

确保设置" public_actions"用户登录您的应用时的权限。