如果手机上没有安装Facebook应用,如何在iOS应用中与Facebook分享照片?

时间:2017-07-04 09:46:48

标签: ios swift facebook swift3 facebook-share

我正在使用FBSDKShareKit(4.22.1),我尝试使用以下代码分享照片:

let photo = FBSDKSharePhoto()
photo1.imageURL = URL(string: "sample url")
photo.isUserGenerated = false  
let photoContent = FBSDKSharePhotoContent()
photoContent.photos = [photo]
FBSDKShareDialog.show(from: self, with: photoContent, delegate: nil)

但只有在手机上安装原生Facebook应用时才有效。 我还尝试使用分享按钮而不是分享对话来显示内容,如:

var shareButton = FBSDKShareButton()
shareButton.shareContent = photoContent
shareButton.center = self.view.center
self.view.addSubview(shareButton)
如果没有安装app,它就无法正常工作。

我想要在我的应用中使用的FBSDK,在未安装Facebook应用时打开Safari,默认情况下会为 FBSDKShareLinkContent 打开Safari,但不适用于 {{ 1}} 即可。 有谁知道这是什么问题?

2 个答案:

答案 0 :(得分:2)

我已采用另一种方式使用图谱API 分享照片。这非常有帮助。这是a link。 您需要的是将用户的权限转移到 publish_actions 发布之前。 此外,没有安装本机Facebook应用程序。刚刚通过浏览器登录。 我希望这对你有所帮助。

答案 1 :(得分:1)

好吧,我在Facebook developer website找到了答案,即:

  

照片

     

人们可以通过共享将您应用中的照片分享到Facebook   对话框或自定义界面:

     

照片的大小必须小于12MB

     

人们需要安装原生Facebook for iOS应用程序,版本7.0或更高版本

你也可以要求" publish_actions",你需要登录两次,首先是readPermission用于电子邮件,然后当用户想要共享一个帖子loginWithPublishPermission for" publish_actions"。关键是你必须添加" publish_actions"首先在您的Facebook开发者帐户中。