이 가이드에서는 iOS용 Facebook SDK를 사용하여 iOS 앱과 Facebook을 통합하는 방법을 보여줍니다.
SDK v13.0부터는 그래프 API를 호출할 때 클라이언트 토큰이 필수입니다.
Facebook SDK의 기능:
선택 사항 | 해당 패키지를 프로젝트에 추가 |
---|---|
앱이 Facebook 서비스를 사용하도록 허용 |
|
사용자가 앱에 로그인하고 앱에 데이터 액세스 권한을 요청하도록 허용 |
|
앱이 Facebook에 콘텐츠를 공유하도록 허용 |
|
사용자가 앱에 로그인하여 참여를 지원하고 소셜 기능을 홍보하도록 허용 |
|
Info.plist
파일을 구성하세요. Facebook 로그인을 통합하고 나서 특정 앱 이벤트가 이벤트 관리자에 대해 자동으로 로깅 및 수집됩니다. 단, 자동 앱 이벤트 로깅을 비활성화한 경우는 예외입니다. 수집되는 정보 및 자동 앱 이벤트 로깅을 비활성화하는 방법에 대한 자세한 내용은 자동 앱 이벤트 로깅을 참조하세요.
Info.plist
를 마우스 오른쪽 버튼으로 클릭하고 소스 코드로 열기를 선택합니다. <dict>...</dict>
)에 붙여넣습니다. [CFBundleURLSchemes]
키의 <array><string>
에서 APP-ID를 앱 ID로 대체합니다.FacebookAppID
키의 <string>
에서 APP-ID를 앱 ID로 대체합니다.FacebookClientToken
키의 <string>
에서 CLIENT-TOKEN을 앱 대시보드의 설정 > 고급 > 클라이언트 토큰에 나와 있는 값으로 대체합니다.FacebookDisplayName
키의 <string>
에서 APP-NAME을 앱 이름으로 대체합니다.Info.plist
에 다음 항목도 포함해야 합니다. FacebookAutoLogAppEventsEnabled
를 Info.plist
에서 키로 추가하면 앱 이벤트의 자동 수집을 'true' 또는 'false'로 직접 설정할 수 있습니다.
AppDelegate.swift
메서드의 코드를 대체합니다. 이 코드는 앱이 시작될 때 SDK를 초기화하며, 로그인이나 공유 작업을 수행할 때 SDK가 Facebook 네이티브 앱의 로그인과 공유를 처리하도록 합니다. 그렇지 않으면 사용자가 Facebook에 로그인한 상태에서만 앱 내 브라우저를 통해 로그인할 수 있습니다. // AppDelegate.swift import UIKit import FacebookCore @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] ) } }
SceneDelegate
로 이동했습니다. iOS 13을 사용하는 경우 다음의 메서드를 SceneDelegate
에 추가하여 로그인이나 공유 등의 기능이 의도한 대로 작동하도록 하세요. // SceneDelegate.swift import FacebookCore ... 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] ) }
앱에 앱 이벤트 및 기타 Facebook 제품을 구현하는 방법을 알아보려면 아래 버튼 중 하나를 클릭하세요.
iOS에서 공유Facebook 로그인 추가앱 이벤트 추가그래프 API 사용