Bonjour, j'ai intégré le SDK de Facebook dans une application iOS 6. L'authentification et le partage de Facebook fonctionnent parfaitement, mais il n'y a aucune disposition pour fermer la boîte de dialogue FB. Lorsque la boîte de dialogue FB s'ouvre, elle ne se ferme qu'une fois l'authentification réussie. Il n'y a pas de disposition pour fermer ou revenir en arrière. Comment puis-je créer un bouton de fermeture ? Le code que j'utilise est présenté ci-dessous.
-(NSDictionary *)shareFacebook
{
NSDictionary *userInfo;
if (FBSession.activeSession.isOpen)
{
if (FBSession.activeSession.isOpen)
{
[self.closeButton setHidden:NO];
[FBRequestConnection startForMeWithCompletionHandler:^(FBRequestConnection *connection, id<FBGraphUser> user, NSError *error) {
NSUserDefaults *standardUserDefaults=[NSUserDefaults standardUserDefaults];
[standardUserDefaults setObject:user forKey:@"fbUserInfo"];
[self.manager authenticateUserUsingFB:[user objectForKey:@"email"]];
}];
}
}
else{
NSLog(@"fb session not active.");
[self openSessionWithAllowLoginUI:YES];
}
return userInfo;
}
- (void)openSessionWithAllowLoginUI:(BOOL)allowLoginUI {
NSArray *permissions = [[NSArray alloc] initWithObjects:
@"user_photos",
@"publish_actions",
@"read_stream",
@"friends_photos",
@"email" ,nil];
[FBSession setActiveSession:[[FBSession alloc] initWithPermissions:permissions]];
[[FBSession activeSession] openWithBehavior:FBSessionLoginBehaviorForcingWebView
completionHandler:^(FBSession *session,
FBSessionState state,
NSError *error) {
NSLog(@" state=%d",state);
if(FBSessionStateOpen)
{
[self shareFacebook];
}
}];
}