ストリームの公開許可が必要なアプリケーションがあります。openActionSessionWithReadPermission を使用して Facebook セッションを開くことができましたが、reauthorizedWithPublishPermission を呼び出すと、次のようなエラーが表示されます。
error = 操作を完了できませんでした。(com.facebook.sdk エラー 2.)
これは、承認プロセスを実行するために私が書いたコードです。
return [FBSession openActiveSessionWithReadPermissions:[NSArray arrayWithObjects: @"user_photos", nil]
allowLoginUI:allowLoginUI
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
switch (state)
{
case FBSessionStateCreated:
case FBSessionStateCreatedTokenLoaded:
case FBSessionStateOpen:
[[FBSession activeSession] reauthorizeWithPublishPermissions:[NSArray arrayWithObjects:@"publish_actions", nil] defaultAudience:FBSessionDefaultAudienceFriends
completionHandler:^(FBSession *session, NSError *error) {
[self sessionStateChanged:session
state:state
error:error
success:success failure:failure];
}];
break;
}
}];
openActiveSessionWithPublishPermission を使用するだけのコードがありますが、結果は同じです。
エラーの意味は何ですか?
さらに、openActiveSessionWithPublishPermission を使用し、publish_stream パーミッションを渡さない場合、セッションを開くことはできますが、Facebook Web サイトのアプリ設定の下に、「このアプリは、あなたに代わって投稿することもできます」というオプションが表示されません。しかし、それを追加すると、同じ問題が発生します。