Facebook视频上传公共视频问题

时间:2013-01-21 01:28:10

标签: facebook video facebook-ios-sdk

我从iOS应用上传视频取得了一些成功。我能够通过上传确认publish_action权限和进程。

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

成功上传后,我会通过video_id从Facebook API获得回复。我将其存储在dB中,以便稍后访问,因为它是一个公共视频。那么,当我检查返回的video_ids时 - 它们看起来有所不同?

通过我的应用上传的视频(已登录,公开)的ID类似于: 4239462546398 通过Facebook App上传的视频(已登录,公开)的ID类似于: 10150495056083275

因此,无论我是否使用以下网址登录FB,我都可以访问Facebook App视频上传: http://www.facebook.com/video/video.php?v=10150495056083275

我无法使用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"];

     }

     }];
}

0 个答案:

没有答案