3

ユーザーが許可を付与または拒否した場合、ログイン時にこれらが呼び出されることは私には明らかです。

- (void)fbDidLogin;
- (void)fbDidNotLogin:(BOOL)cancelled;

しかし、次のFBSessionDelegateメソッドをいつ呼び出すことができるのか疑問に思いました。

- (void)fbDidExtendToken:(NSString*)accessToken expiresAt:(NSDate*)expiresAt;
- (void)fbDidLogout;
- (void)fbSessionInvalidated;

ドキュメントには次のように書かれています。

//Called after the access token was extended.
- (void)fbDidExtendToken:(NSString*)accessToken expiresAt:(NSDate*)expiresAt;

//Called when the user logged out. 
- (void)fbDidLogout;

//Called when the current session has expired.
- (void)fbSessionInvalidated;

さて、そのようなことがいつ起こるのでしょうか?私が次のように呼ぶとき?

[Facebook authorize:nil];

fbDidLogoutコールが正しく返される可能性はありませんか?

たぶん、ユーザーがFacebookアプリを介して自分のFacebookアカウントから私のアプリを削除した場合、このメソッドはよりも呼び出されますか?いいえ、その場合はアプリが開かないためです。

...では、これらはどのような状況で呼び出されますか?

4

1 に答える 1

5

自分で見つけたと思います...

これです:

- (void)fbDidExtendToken:(NSString*)accessToken expiresAt:(NSDate*)expiresAt;

あなたが呼び出すときに呼び出される可能性があります:

[facebook extendAccessTokenIfNeeded];

これです:

- (void) fbDidLogout;

電話をかけると呼び出されます

[facebook logout] //(of course..)

最後のもの:

- (void)fbSessionInvalidated;

期限切れのセッショントークンを使用してhttpリクエストをFacebookに送信しようとすると、Getが呼び出されます。

FacebookSDKヘッダーファイルFacebook.mで見つけました

答えを探している人のために、ここに質問を残しておきます:)

于 2012-05-04T21:22:22.203 に答える