iPhone から Facebook に動画をアップロードしようとしています。FBLoginView を使用してログインし、FBSession を作成しました。次のコードを使用して、ビデオのアップロードの FBRequest を開始しました。
- (void)buttonRequestClickHandler:(id)sender {
if (FBSession.activeSession.isOpen) {
[FBSession.activeSession requestNewPublishPermissions:permissions
defaultAudience:FBSessionDefaultAudienceOnlyMe
completionHandler:nil];
NSString *audioName = [pictureDictionary4 objectForKey:@"photoVideokey"];
NSArray *pathsa = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectorya = [pathsa objectAtIndex:0];
NSString *moviePath = [documentsDirectorya stringByAppendingPathComponent:@"/Movie"];
NSString *fullPatha = [moviePath stringByAppendingPathComponent:audioName];
NSURL *pathURL = [[NSURL alloc]initFileURLWithPath:fullPatha isDirectory:NO];
NSData *videoData = [NSData dataWithContentsOfFile:fullPatha];
NSString *titleString = self.videotitle.text;
NSString *descripString = self.descrp.text;
NSDictionary *videoObject = @{
@"title":titleString,
@"description": descripString,
[pathURL absoluteString]: videoData
};
FBRequest *uploadRequest = [FBRequest requestWithGraphPath:@"me/videos"
parameters:videoObject
HTTPMethod:@"POST"];
[uploadRequest startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error)
NSLog(@"Done: %@", result);
else
NSLog(@"Error: %@", error.localizedDescription);
}];
}
エラー Error: The operation could not be completed. が表示されます。(com.facebook.sdk エラー 5.)
エラーが何に関係するのかわかりません:
私はログインしていることを知っています
接続されているかどうかわかりませんが、iPhone でインターネットに接続しています
パラメータが間違っていますか? 私は何時間もこれをいじっていますが、結果はありません。誰からの助けも大歓迎です。
最後に、iPhone の設定 - Facebook に移動し、アカウントを削除することで、これが機能するようになりました。次に、自分のアプリでビデオをアップロードするためにタップすると、Facebook が自分のアプリを使用できるかどうかを尋ねるビューが読み込まれ、「はい」と答えてアップロードを禁止しました。また、権限を publish_actions のみに変更し、publish_streams を削除する必要がありました。これは読み取り権限であるためです。とにかくそれは今働いています。次に、ハードコーディングされていない、ユーザーが選択した文字列からロードする defaultAudience を取得します。別の投稿。