제한적 로그인을 위한 엔드포인트를 변경했으며, 이제 limited.facebook.com에서 제한적 로그인 기능에 액세스할 수 있습니다.
사용자가 Facebook으로 앱에 로그인하는 경우, 사용자는 Facebook에서 대신 정보를 가져오거나 작업을 수행하도록 앱에 권한을 부여할 수 있습니다.
iOS 프로젝트에 Facebook 로그인을 추가하기 위한 단계는 아래와 같습니다.
iOS용 Facebook 로그인을 사용하기 전에 개발 환경을 설정하세요.
Swift 패키지 관리자(SPM) 사용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] ) }
iOS 앱에 Facebook 로그인 버튼을 사용하세요.
// Add this to the header of your file, e.g. in ViewController.swift import FacebookLogin // Add this to the body class ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let loginButton = FBLoginButton() loginButton.center = view.center view.addSubview(loginButton) } }
AccessToken.current
를 통해 앱에 로그인했음을 표시합니다. LoginManager
에서 이 토큰을 설정하고, AccessToken.current
을 설정할 때 이 토큰을 자동으로 키체인 스토어에도 씁니다. AccessToken
에는 사용자를 식별하는 데 사용할 수 있는 userID
가 포함되어 있습니다. permissions
속성을 FBLoginButton
개체에 설정하세요.