2012-06-25 3 views
2

Мое приложение для входа в APP не работает, и я не могу понять, почему.Cocoa Facebook не работает

В моем .h файле я добавил #import "FBConnect.h" и @interface MyImageViewControllerViewController : UIViewController<UINavigationControllerDelegate, FBSessionDelegate, FBRequestDelegate> и у меня есть Facebook *facebook; iVar.

Я реализую все методы, которые требуются (как сказано в учебнике), вот как я это сделал. (Я не буду размещать все сог Я думаю, что это будет бессмысленно)

-(BOOL)facebooking{ 
facebook = [[Facebook alloc] initWithAppId:FB_APP_ID andDelegate:self];  
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
if ([defaults objectForKey:@"FBAccessTokenKey"] 
    && [defaults objectForKey:@"FBExpirationDateKey"]) { 
    facebook.accessToken = [defaults objectForKey:@"FBAccessTokenKey"]; 
    facebook.expirationDate = [defaults objectForKey:@"FBExpirationDateKey"]; 

} 
if (![facebook isSessionValid]) { 
    [facebook authorize:nil]; 
} 
return YES; 
} 

И

- (void)fbDidLogin { 
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; 
[defaults setObject:[facebook accessToken] forKey:@"FBAccessTokenKey"]; 
[defaults setObject:[facebook expirationDate] forKey:@"FBExpirationDateKey"]; 
[defaults synchronize]; 

UIAlertView *a = [[UIAlertView alloc] initWithTitle:@"Token" message:[facebook accessToken] delegate:self cancelButtonTitle:@"ok" otherButtonTitles: nil]; 
[a show]; 

} 

Теперь, когда я называю метод facebooking он запускает сафари на моей странице Идента Facebook APP, я нажимаю Okay он возвращается к моему приложению iOS, но по какой-то причине fbDidLogin не вызывается. ни fbDidNotLogin. Есть ли место, которое мне нужно указать на них?

спасибо.

ответ

1

У вас есть этот метод?

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url 
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation { 
return [facebook handleOpenURL:url]; 
} 
+0

да, и '- приложение (BOOL): (UIApplication *) применение handleOpenURL: (NSURL *) URL { возвращение [facebook handleOpenURL: URL]; } ' –

+0

вы должны реализовать juste один из этих двух методов, первый для iOS 4.2+, второй else – iArezki

+1

попытайтесь реализовать все эти методы в делетете приложения – iArezki

Смежные вопросы