2017-10-13 4 views
0

私は、GraphSharerを使ってFacebookのビデオを共有していて、共有完了の投稿IDを探しています。FacebookShare PostSharingResultからポストIDを取得する方法

しかし、私はそれを取得することができません。

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

また、 'post_id'は、あなたのアプリに' publish_actions'パーミッションが与えられている場合にのみ返されます。こちらをご覧ください:https://developers.facebook.com/docs/sharing/reference/feed-dialog/ – Bangdel

+0

@Bangdelはすでにログに記録されています。私はそれを行うためのすべての許可を持っています。私はちょうど私が得ているその結果を解析したい。 –

答えて

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 
      } 
関連する問題