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"];
}
}];
}