iOS アプリで次の問題に直面しています。
ユーザーの友人のウォールに公開しているときに、iOS アプリを使用するとエラー "
com.facebook.sdk error 5
" が発生します。「 」をチェックするたびに、アプリがログインを求めてきます
FBSession.activeSession.isOpen
。
以前はすべて正常に機能していました。しかし、アプリ ID を変更したため (現在は別の Facebook アプリを使用する必要があります)。エラーが発生しています。
私はこれについていくつかの調査を行い、いくつかの解決策を見つけました。私はそれらをすべて試しましたが、何も機能しません。
Facebook にログインするための次のコードを作成しました。
- (BOOL)openSessionWithAllowLoginUI:(BOOL)allowLoginUI {
comingfromFB = YES;
NSArray *permissions = [[NSArray alloc] initWithObjects:
@"friends_birthday",
nil];
return [FBSession openActiveSessionWithReadPermissions:permissions
allowLoginUI:allowLoginUI
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];
}
そして、ストーリーを公開するための次のコード:
if ([FBSession.activeSession.permissions
indexOfObject:@"publish_actions"] == NSNotFound) {
// No permissions found in session, ask for it
[FBSession.activeSession
reauthorizeWithPublishPermissions:
[NSArray arrayWithObject:@"publish_actions"]
defaultAudience:FBSessionDefaultAudienceFriends
completionHandler:^(FBSession *session, NSError *error) {
if (!error) {
// If permissions granted, publish the story
[self publishStory];
}
}];
} else {
// If permissions present, publish the story
[self publishStory];
}
アプリを実行すると、次のエラーが表示されます。
Error: HTTP status code: 403
2013-02-05 14:36:47.109 <appname>[1705:c07] Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0xaa9af20 {com.facebook.sdk:ParsedJSONResponseKey={
body = {
error = {
code = 200;
message = "(#200) The user hasn't authorized the application to perform this action";
type = OAuthException;
};
};
code = 403;
}, com.facebook.sdk:HTTPStatusCode=403}
どこが間違っているのかを理解するのを手伝ってください。
また、いくつかのキーと値のペアを に追加しましたNSUserDefaults
。それがその理由として考えられるでしょうか?
ありがとう。