Este guia mostra como integrar seu app iOS com o Facebook usando o SDK do Facebook para iOS.
Veja os recursos que o SDK do Facebook habilita:
Você precisará do seguinte:
| Se você quiser | Adicione este pacote ao projeto |
|---|---|
Permitir que o app use os serviços do Facebook |
|
Permitir que usuários entrem no app e que o app solicite permissões de acesso de dados |
|
Permitir que o app compartilhe conteúdo no Facebook |
|
Permitir que os usuários entrem no app para habilitar o engajamento e promover recursos sociais |
|
Configure o arquivo Info.plist com um trecho em XML que contenha dados sobre o app.
Depois que você integrar o Login do Facebook, alguns eventos do app serão automaticamente registrados e coletados para o Gerenciador de Eventos, a menos que você desabilite o registro automático. Para saber mais sobre as informações coletadas e sobre como desabilitar o registro automático de eventos, consulte Registro automático de eventos do app.
Info.plist e selecione Abrir como ▸ Código-fonte.
<dict>...</dict>).
<key>CFBundleURLTypes</key><array><dict><key>CFBundleURLSchemes</key><array><string>fbAPP-ID</string></array></dict></array><key>FacebookAppID</key><string>APP-ID</string><key>FacebookClientToken</key><string>CLIENT-TOKEN</string><key>FacebookDisplayName</key><string>APP-NAME</string>
<array><string>, na chave [CFBundleURLSchemes], substitua APP-ID pelo ID do app.<string>, na chave FacebookAppID, substitua APP-ID pelo ID do app.<string>, na chave FacebookClientToken, substitua CLIENT-TOKEN pelo valor encontrado em Configurações > Avançado > Token de cliente no Painel de Apps.<string>, na chave FacebookDisplayName, substitua APP-NAME pelo nome do app.Info.plist do app precisará incluir isto também:
<key>LSApplicationQueriesSchemes</key><array><string>fbapi</string><string>fb-messenger-share-api</string></array>
É possível definir o processo de coleta automática de eventos do app como "verdadeiro" ou "falso" adicionando FacebookAutoLogAppEventsEnabled como uma chave em Info.plist.
É necessário que o projeto tenha o recurso Keychain Sharing para que o login funcione em apps do Mac Catalyst.



Substitua o código no método AppDelegate.swift pelo código a seguir. Esse código inicializa o SDK quando seu app é iniciado e permite que o SDK gerencie logins e compartilhamentos do app nativo do Facebook quando você executa uma ação Entrar ou Compartilhar. Caso contrário, o usuário precisará estar conectado ao Facebook para fazer login pelo navegador no app.
// AppDelegate.swift
import UIKit
import FBSDKCoreKit
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
ApplicationDelegate.shared.application(
application,
didFinishLaunchingWithOptions: launchOptions
)
return true
}
func application(
_ app: UIApplication,
open url: URL,
options: [UIApplication.OpenURLOptionsKey : Any] = [:]
) -> Bool {
ApplicationDelegate.shared.application(
app,
open: url,
sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String,
annotation: options[UIApplication.OpenURLOptionsKey.annotation]
)
}
}
O iOS 13 moveu a funcionalidade da URL de abertura para SceneDelegate. Ao usar essa versão do iOS, adicione o seguinte método a SceneDelegate para que as operações de login e compartilhamento funcionem conforme o esperado:
// SceneDelegate.swift
import FBSDKCoreKit
...
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
guard let url = URLContexts.first?.url else {
return
}
ApplicationDelegate.shared.application(
UIApplication.shared,
open: url,
sourceApplication: nil,
annotation: [UIApplication.OpenURLOptionsKey.annotation]
)
}
No Xcode, selecione um simulador para iOS e clique em Run. O Xcode cria seu projeto e inicializa a versão mais recente do seu app em execução no Simulador.
O Gerenciador de Eventos mostra os eventos que você envia ao Facebook. Caso seja a primeira vez que você lança o aplicativo com este código, talvez seja necessário esperar pelo menos 20 minutos para que os eventos sejam exibidos.
Observação: pode levar até 20 minutos para que os eventos sejam exibidos no painel.
Para saber como implementar Eventos do App e outros produtos do Facebook, clique em um dos botões abaixo.
Como compartilhar no iOSAdicionar Login do FacebookAdicionar Eventos do AppUsar a Graph API