我正在使用 Xcode 4.3.1
在我的应用程序中,我尝试使用 Facebook SSO。我的要求是应用程序第一次应该请求授权,然后它应该检查应用程序是否被用户授权并应该移动到下一个流程(即使在任务之后设备被取消了)。我不想一遍又一遍地重复那个授权窗口。
在 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];
}
}
应用授权后如何使授权窗口不出现...