이 가이드에서는 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 사용