J'ai commencé à travailler sur une application iOS sur Xcode à l'aide de Swift et de storyboards. J'ai l'obligation de cliquer sur un bouton pour afficher les informations du profil Facebook d'un utilisateur à l'écran (uniquement si l'utilisateur est connecté à l'aide de Facebook), mais s'il n'est pas connecté, l'écran de connexion lui sera automatiquement attribué et si la connexion est réussie à nouveau la vue de profil sera affichée.
Comment puis-je faire ceci?
Si vous utilisez le SDK de connexion Facebook, appelez
FBSDKAccessToken.currentAccessToken()
Ce ne sera pas nul si l'utilisateur est connecté.
https://developers.facebook.com/docs/facebook-login/ios/v2.3#token
Avec le dernier SDK Facebook, vous pouvez vérifier comme ceci:
if FBSDKAccessToken.current() != nil {
// logged in
}
else {
// not logged in
}
Ils sont récemment passés de FBSDKAccessToken.currentAccessToken()
à FBSDKAccessToken.current()
Pour un code plus pratique et standard dans Swift, vous pouvez utiliser l'extrait de code suivant. BTW j'utilise Swift 2.2 et Xcode 7.3.1.
if let loggedInUsingFBTokenCheck = FBSDKAccessToken.currentAccessToken(){
//User is already logged-in. Please do your additional code/task.
}else{
//User is not logged-in. Allow the user for login using FB.
}
Si vous voulez charger un viewController spécifique lors du lancement de l'application en fonction de la vérification de connexion, vous pouvez placer ce code dans la variable AppDelegate
de votre projet et vérifier à l'intérieur
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
//Check here for login
}
Je vous remercie.