我使用的Xcode 4.3.1重複授權窗口
在我的應用我嘗試使用Facebook SSO.My要求是在第一時間應用程序應該要求的授權後,它應該檢查是否應用是由用戶授權的,並且應該移動到下一個進程(即使在設備中的任務被取消之後)。我不需要那個授權窗口一次又一次地重複。
中的appdelegate:
facebook=[[Facebook alloc]initWithAppId:appid andDelegate:first];
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSLog(@"%@Defaults:",[defaults objectForKey:@"FBAccessTokenKey"]);
if ([defaults objectForKey:@"FBAccessTokenKey"]
&& [defaults objectForKey:@"FBExpirationDateKey"])
{
facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
accessToken=facebook.accessToken;
facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
date=facebook.expirationDate;
}
In my view Controller:
-(IBAction)LoginClick:(id)sender
{
NSUserDefaults *defaults1 = [NSUserDefaults standardUserDefaults];
[defaults1 setObject:xapp.facebook.accessToken forKey:@"FBAccessTokenKey"];
[defaults1 setObject:xapp.facebook.expirationDate forKey:@"FBExpirationDateKey"];
[defaults1 synchronize];
if (![xapp.facebook isSessionValid])
{
permissions = [[NSArray alloc] initWithObjects:@"read_stream",@"publish_stream", nil];
[xapp.facebook authorize:permissions];
}
else if([xapp.facebook isSessionValid])
{
NSLog(@"Hiii");
permissions=nil;
[xapp.facebook authorize: nil];
}
}
我怎樣才能使應用程序被授權後,不會出現授權窗口...
感謝您的代碼...但我在[偵聽器facebookDidLogin]; 「沒有已知的選擇器實例方法'fbDidLogin'」 – Icoder 2012-07-20 10:08:12
這是爲了防止您在每次登錄時詢問權限。檢查更新的答案。 – Shabib 2012-07-20 10:12:33
根據我更新的答案創建一個名爲FBUser.h的自定義頭文件。 – Shabib 2012-07-20 10:18:45