2017-10-13 68 views
0

我在Facebook上分享视频使用GraphSharer和寻找在完成共享后的ID。如何获得帖子ID从分PostSharingResult

但我无法取回它。

sharer.completion = { result in 
         // Handle share results 
         print("Share results : \(result)") 

        } 

我在我的日志得到这个:

Share results : success(FacebookShare.PostSharingResult(dictionary: ["video_id": "1455433997844989", "completionGesture": "post"])) 

所以我想这些,但没有奏效:

  1. let dict = result as! [String:Any]
  2. result[""]

    ,但得到错误ContentSharerResult没有标件

任何想法如何得到这个结果的价值VIDEO_ID?任何帮助,将不胜感激。

谢谢!

+0

在控制台上试一下'po result.success',看看它拿着什么类型。 –

+0

此外,只有当您的应用获得'publish_actions'权限时才应返回'post_id'。看到这里:https://developers.facebook.com/docs/sharing/reference/feed-dialog/ – Bangdel

+0

@邦加它已经在那里日志。我有许可这样做。我只是想解析我得到的结果。 –

回答

1

经过一些更多的解决方法后,我终于得到了我的问题的解决方案。 对于将来想要获取帖子ID的任何人。

sharer.completion = { result in 
      // Handle share results 
      print("Share results : \(result)") 
      switch result{ 
      case .success(let shareResult): 
       print(shareResult["video_id"]) // Your post id 
       break 
      case .cancelled: 
       break 
      case .failed(let Error): 
       print(Error) 
       break 
      }