iOS用のFacebook3.0SDKにアップグレードしています。アプリケーションを再起動した後、既存のセッションを開こうとするまで、問題はうまくいきました。Facebookユーザーの友達リストにアクセスしようとしています。
if ([[FBSession activeSession] isOpen]) {
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
//do something here
}];
}else{
[[self session] openWithCompletionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
if ([self isValid]) {
[request startWithCompletionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
//log this error we always get
NSLog(@"%@",error);
//do something else
}];
}
}];
}
ただし、次のエラーが発生します。
Error Domain=com.facebook.sdk Code=5 "The operation couldn’t be completed. (com.facebook.sdk error 5.)" UserInfo=0x1d92ff40 {com.facebook.sdk:ParsedJSONResponseKey={
body = {
error = {
code = 2500;
message = "An active access token must be used to query information about the current user.";
type = OAuthException;
};
};
code = 400;
}, com.facebook.sdk:HTTPStatusCode=400}
FBSession reauthorizeメソッドを使用すると、エラーなしでリクエストを完了できることがわかりましたが、受け入れられないアプリケーションを再起動するたびにUIを表示するか、アプリを切り替える必要があることも意味します。私が違ったやり方で何をすべきかについての提案はありますか?