мне нужно использовать API Facebook:
в appdelegate.m у меня есть этот код:
// Initialize Facebook
facebook = [[Facebook alloc] initWithAppId:@"MY_TOKEN" andDelegate:self];
// Check and retrieve authorization information
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
if ([defaults objectForKey:@"FBAccessTokenKey"] && [defaults objectForKey:@"FBExpirationDateKey"]) {
facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"];
facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"];
}
после, в другом виде у меня это:
AppDelegate* dlg = (AppDelegate *)[[UIApplication sharedApplication] delegate];
NSArray *permissions = [[NSArray alloc] initWithObjects:@"offline_access", nil];
if (![[dlg facebook] isSessionValid]) {
[[dlg facebook] authorize:permissions];
}
и работает нормально: вызовите safari с авторизацией для использования моего приложения, я нажимаю Ok для авторизации и мое приложение вызывается снова ... мое приложение визуализирует последний вид перед авторизацией, но событие
- (void)fbDidLogin
{
NSLog(@"fbDidLogin");
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"];
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"];
[defaults synchronize];
}
в AppDelegate.m (мой appdelegate имеет FBSessionDelegate ) не запускается (также другие события FBSessionDelegate , такие как fbDidNotLogin не запускаются ...
где моя ошибка?
заранее спасибо