2

iOS アプリからの動画のアップロードに成功しました。publish_action の権限を確認し、アップロードを処理できます。

ACFacebookPermissionsKey : @[@"email", @"user_videos", @"publish_actions"],
ACFacebookAudienceKey:ACFacebookAudienceEveryone};

アップロードが成功すると、Facebook API から video_id を含む応答を受け取ります。これは公開ビデオであるため、後でアクセスできるように dB で保存しています。それで、返された video_ids を調べると、それらは異なっているように見えますか?

アプリ経由でアップロードされた動画 (ログイン済み、公開) の ID は のようなものです: 4239462546398

そのため、FB にログインしているかどうかに関係なく、次の URL を使用して Facebook アプリのビデオ アップロードにアクセスできます

Facebook によって作成された video_id を使用して iOS アプリ経由でアップロードされたビデオにアクセスできません: http://www.facebook.com/video/video.php?v=4239462546398

動画のアップロードで何が間違っているかを知る必要がありますか? 公開に設定しているのに… 自分の動画が見れないみたい????

私の環境に関するいくつかの詳細:

  • iOS 6 向けのビルド

  • iOS 6 FB 統合の使用

  • SLRequest で動画をアップロードする (リクエスト/レスポンスの成功)

これが役立つ(そして機能する)場合のビデオ投稿のコードです

- (void) uploadFBVideo2:(NSURL*) filePath
{
      ANVideoMashManager *videoMashManager = [ANVideoMashManager sharedManager];

      NSURL *videourl = [NSURL URLWithString:@"https://graph.facebook.com/me/videos"];
      NSData *videoData = [NSData dataWithContentsOfURL:filePath];

      NSDictionary *params = @{
        @"title": videoMashManager.videoStoryTitle,
        @"description": videoMashManager.videoDescTitle
      };

      SLRequest *uploadRequest = [SLRequest requestForServiceType:SLServiceTypeFacebook
                                              requestMethod:SLRequestMethodPOST
                                                        URL:videourl
                                                 parameters:params];
      [uploadRequest addMultipartData:videoData
                       withName:@"video"
                           type:@"video/mov"
                       filename:[filePath absoluteString]];

      uploadRequest.account = facebooAccount;

     [uploadRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
     NSString *responseString = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
     if(error){
         NSLog(@"Video Upload ERROR: %@", error.localizedDescription);

     }else{
         NSLog(@"Video Upload SUCCESS: %@", responseString);
         NSDictionary* jsonResponse = [NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&error];
         NSString *videoId = [jsonResponse objectForKey:@"id"];

     }

     }];
}
4

0 に答える 0