Obiettivi del blog
Implementare l'accesso a Facebook tramite l'SDK di Facebook nell'app per iOS. O puoi scaricare il progetto di esempio da questo link.
Procedura da implementare
1. Crea un nuovo progetto Xcode. E apri il progetto.
2. Apri il terminale e digita "cd Quindi trascina il file di progetto da Xcode al terminale, aggiungendo il percorso della cartella del progetto nel Terminale, quindi elimina il nome del progetto "Esempio Facebook Login.xcodeproj"dal comando. Il comando finale in Xcode sarà come"cd / Utenti / macpro / Desktop / iOS / Esempio Login Facebook /", questo è il percorso del progetto.
3. Nel terminale, usa il comando "pod init", questo creerà un podfile per il progetto.
4. Usa comando "nano podfile", questo aprirà il podfile in modalità di modifica. Aggiungi sotto i pod nel file.
pod 'FBSDKCoreKit'
pod 'FBSDKShareKit'
pod 'FBSDKLoginKit'
5. Il podfile apparirà sotto lo screenshot.
6. Usa comando "control + X", per uscire dal file e salvare il file pod.
7. Esegui comando "installazione pod"per installare il podfile nel progetto. Vedrai il terminale di processo come di seguito:
8. Al termine dell'installazione, chiudere il progetto xcode. Vai alla cartella del progetto, vedrai il nuovo progetto chiamato "[nome del tuo progetto] .wcWorkspace". Apri questo progetto.
9. Apri il file chiamato "AppDelegate.swift"nel tuo progetto. Importa"FBSDKCoreKit"e aggiungi sotto il codice nell'applicazione func (_ applicazione: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?)
FBSDKApplicationDelegate.sharedInstance () ?. application (application, didFinishLaunchingWithOptions: launchOptions)
Il codice apparirà di seguito:
10. Vai a questo link per creare un nuovo progetto Facebook – https://developers.facebook.com/apps/
11. Clicca su "Aggiungi una nuova appInserisci il nome del tuo progetto e procedi.
12. Compila i dettagli nella pagina successiva. Vai a "Impostazioni"nel menu a sinistra, quindi vai a"Basic"e riempire i dettagli.
13. Vai in fondo alla pagina. Clicca su "Aggiungi piattaformaQuindi inserisci l'ID del bundle delle app e vedrai una schermata come di seguito:
14. Quindi vai al tuo progetto Xcode. Apri il file info.plist (fai clic con il tasto destro del mouse -> Apri come -> Codice sorgente), quindi aggiungi il codice seguente nel tuo file info.plist.
<chiave> CFBundleURLTypes </ key> <array> <dict> <chiave> CFBundleURLSchemes </ key> <array <string> fb [l'ID applicazione di Facebook che otterrai nel passaggio 11] </ string> </ array> < / dict> </ array> <key> FacebookAppID </ key> <string> [il tuo ID app per Facebook che otterrai nel passaggio 11] </ string> <key> FacebookDisplayName </ key> <string> [la tua app di Facebook nome] </ string>
15. Apri il tuo ViewController dove vuoi aggiungere il pulsante Facebook per il login. Importa "FBSDKLoginKit" e aggiungi sotto il codice nella funzione viewDidLoad ().
// Creazione di un'istanza del pulsante di accesso di Facebook. let loginButton = FBSDKLoginButton () // Impostazione dell'autorizzazione per il pulsante facebook. loginButton.readPermissions = ["email", "public_profile"] // Impostazione del delegato del pulsante facebook in modo che possiamo accedere alla risposta ricevuta da facebook dopo il login. loginButton.delegate = self // Centrare il pulsante di accesso facboiok e aggiungere il pulsante nella vista principale loginButton.center = self.view.center self.view.addSubview (loginButton)
16. Aggiungi il delegato del pulsante Facebook e i metodi del delegato.
17. Per ottenere i dettagli dell'utente è necessario aggiungere sotto il codice in func loginButton (_ loginButton: FBSDKLoginButton !, doneCompleteWith result: FBSDKLoginManagerLoginResult !, errore: Errore!) Metodo delegato del pulsante Facebook.
// Se riceviamo token in risposta, significa che l'accesso a Facebook ha successo. Sotto il codice viene utilizzato per ottenere i dettagli utente dopo l'accesso di Facebook è successo. if ((FBSDKAccessToken.current ())! = nil) {FBSDKGraphRequest (graphPath: "me", parametri: ["campi": "id, nome, first_name, last_name, email"]). start (completionHandler: {(connection , risultato, errore) -> Void in if (error == nil) {// Result conterrà i dettagli dell'utente che possono essere recuperati print (result ?? "")}})}
18. Il codice finale avrà il seguente aspetto:
19. Esegui il progetto e utilizza il pulsante "Accedi". Sarai registrato su Facebook. Otterrai i dettagli dell'utente nella variabile "risultato", dalla quale potrai analizzare i dettagli nel tuo progetto.
sommario
Dopo aver seguito la procedura sopra descritta, sarai in grado di implementare l'autenticazione di Facebook nelle app iOS.