我在Facebook應用程序驗證過程中遇到問題,我的Facebook帳戶已經授權該應用程序,但有時在設備上運行應用程序時,它會打開Facebook應用程序,對話框顯示「您已經授權這個應用程序「,而且這種情況會在同一個設備上使用同一個Facebook帳戶多次發生。Facebook要求授權已授權的用戶
而且我現在的儲蓄都在NSUserDefaults
所需要的數據時,我分配Facebook
類對象:
facebook = [[Facebook alloc] initWithAppId:appID andDelegate:self];
NSUserDefaults *userDefault = [NSUserDefaults standardUserDefaults];
if([userDefault objectForKey:@"FBAccessTokenKey"] && [userDefault objectForKey:@"FBExpirationDateKey"])
{
facebook.accessToken = [userDefault objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [userDefault objectForKey:@"FBExpirationDateKey"];
}
也fbDidLogin
和fbDidExtendToken
FBSessionDelegate
方法:
- (void)fbDidLogin
{
NSLog(@"fbDidLogin");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
}
- (void)fbDidExtendToken:(NSString *)accessToken expiresAt:(NSDate *)expiresAt
{
NSLog(@"token extended");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:accessToken forKey:@"FBAccessTokenKey"];
[defaults setObject:expiresAt forKey:@"FBExpirationDateKey"];
[defaults synchronize];
}
我錯過了什麼?
它是從設備上刪除應用程序後? – Moxy 2012-08-05 14:40:58