iOS
Intégration de la Connexion Facebook à une App iOS avec Swift
11 min
ajouter la connexion facebook à votre application ios en utilisant le tutoriel swift introduction cette section explique comment vous pouvez créer une application avec enregistrement utilisateur en utilisant la connexion facebook et les fonctionnalités principales de parse server via back4app prérequis pour compléter ce guide rapide, vous avez besoin de xcode une application créée sur back4app suivez le tutoriel de nouvelle application parse pour apprendre à créer une application parse sur back4app une application ios connectée à back4app remarque suivez le tutoriel d'installation du sdk parse (objc) pour créer un projet xcode connecté à back4app 1 configuration de facebook pour commencer à utiliser les fonctions de facebook, vous devez allez sur le site des développeurs facebook et créez un compte et une application ajoutez l'id de l'application facebook de votre application sur la page des paramètres de votre application parse suivez les instructions de facebook pour commencer avec le sdk facebook https //developers facebook com/docs/ios/getting started pour créer une application liée au sdk facebook 2 lier votre application facebook avec back4app allez sur le tableau de bord de votre application à site web de back4app et cliquez sur paramètres du serveur paramètres du serveur trouvez le bloc “connexion facebook” et cliquez sur paramètres paramètres le bloc “connexion facebook” ressemble à ceci 3\ retournez à votre projet xcode, ouvrez votre info plist info plist copiez le code de configuration facebook , étape 4a, élément 2, et collez le dans la \<dict> \</dict> \<dict> \</dict> partie de votre info plist 4\ afin d'utiliser une boîte de dialogue de facebook, copiez et collez également le code de la section 4a, élément 3 dans votre info plist info plist fichier 5\ enregistrez 3 configuration de votre application ajoutez ce qui suit à votre méthode application\ didfinishlaunchingwithoptions , après avoir initialisé le sdk parse 1 import fbsdkcorekit 2 import parse 3 4 // appdelegate swift 5 func application(application uiapplicatiofunc application( application uiapplication, didfinishlaunchingwithoptions launchoptions \[uiapplication launchoptionskey any]?) > bool { 6 // initialize parse 7 let parseconfig = parseclientconfiguration { 8 $0 applicationid = "parseappid" 9 $0 clientkey = "parseclientkey" 10 $0 server = "parseserverurlstring" 11 } 12 parse initialize(with parseconfig) 13 pffacebookutils initializefacebook(applicationlaunchoptions launchoptions) 14 } 2\ ajoutez les gestionnaires suivants dans votre délégué d'application 1 func application( application uiapplication, open url url, sourceapplication string?, annotation any) > bool { 2 3 return fbsdkapplicationdelegate sharedinstance() application( 4 application, 5 open url, 6 sourceapplication sourceapplication, 7 annotation annotation 8 ) 9 10 } 11 12 func application( app uiapplication, open url url, options \[uiapplication openurloptionskey any] = \[ ]) > bool { 13 14 return fbsdkapplicationdelegate sharedinstance() application( 15 app, 16 open url, 17 sourceapplication options\[ sourceapplication] as? string, 18 annotation options\[ annotation] 19 ) 20 21 } 22 23 //make sure it isn't already declared in the app delegate (possible redefinition of func error) 24 func applicationdidbecomeactive( application uiapplication) { 25 fbsdkappevents activateapp() 26 } 4 connexion & inscription pfuser pfuser fournit un moyen de permettre à vos utilisateurs de se connecter ou de s'inscrire via facebook cela se fait en utilisant le logininbackgroundwithreadpermissions logininbackgroundwithreadpermissions méthode comme ceci 1 pffacebookutils logininbackground(withreadpermissions permissions) { 2 (user pfuser?, error error?) in 3 if let user = user { 4 if user isnew { 5 print("user signed up and logged in through facebook!") 6 } else { 7 print("user logged in through facebook!") 8 } 9 } else { 10 print("uh oh the user cancelled the facebook login ") 11 } 12 } lorsque ce code est exécuté, les événements suivants se produisent l'utilisateur voit la boîte de dialogue de connexion facebook l'utilisateur s'authentifie via facebook, et votre application reçoit un rappel en utilisant handleopenurl handleopenurl notre sdk reçoit les données d'accès facebook de l'utilisateur et les enregistre dans un pfuser pfuser si aucun pfuser pfuser n'existe avec le même id facebook, alors un nouveau pfuser pfuser est créé votre bloc de code est appelé avec l'utilisateur la référence de l'utilisateur actuel sera mise à jour avec cet utilisateur l'argument des autorisations est un tableau de chaînes qui spécifie quelles autorisations votre application nécessite de l'utilisateur facebook ces autorisations doivent uniquement inclure des autorisations de lecture pour acquérir des autorisations de publication pour un utilisateur afin que votre application puisse, par exemple, publier des mises à jour de statut en son nom, vous devez appeler \[pffacebookutils logininbackgroundwithpublishpermissions ] logininbackgroundwithpublishpermissions ] 1 pffacebookutils logininbackgroundwithpublishpermissions(\["publish actions"], { 2 (user pfuser?, error nserror?) > void in 3 if user != nil { 4 // your app now has publishing permissions for the user 5 } 6 }) 5 lien si vous souhaitez associer un pfuser pfuser existant à un compte facebook, vous pouvez le lier comme ceci 1 if !pffacebookutils islinkedwithuser(user) { 2 pffacebookutils linkuserinbackground(user, withreadpermissions nil, { 3 (succeeded bool?, error nserror?) > void in 4 if succeeded { 5 print("woohoo, the user is linked with facebook!") 6 } 7 }) 8 } 6 délier si vous souhaitez dissocier facebook d'un utilisateur, il suffit de faire ceci 1 pffacebookutils unlinkuserinbackground(user, { 2 (succeeded bool?, error nserror?) > void in 3 if succeeded { 4 print("the user is no longer associated with their facebook account ") 5 } 6 })