We have made a change to endpoints for Limited Login; it is now accessible under limited.facebook.com
When people log into your app with Facebook, they can grant permissions to your app so you can retrieve information or perform actions on Facebook on their behalf.
The following steps are for adding Facebook Login to your iOS project.
Set up your development environment before using Facebook Login for iOS.
Using Swift Package Manager (SPM)Register and configure your app so you can use Facebook Login by adding your Bundle Identifier.
Info.plist file with an XML snippet that contains data about your app. After you integrate Facebook Login, certain App Events are automatically logged and collected for Events Manager, unless you disable Automatic App Event Logging. In particular, when launching an app in Korea, please note that Automatic App Event Logging can be disabled. For details about what information is collected and how to disable automatic app event logging, see Automatic App Event Logging.
Info.plist, and choose Open As ▸ Source Code. <dict>...</dict>). <array><string> in the key [CFBundleURLSchemes], replace APP-ID with your App ID.<string> in the key FacebookAppID, replace APP-ID with your App ID.<string> in the key FacebookClientToken, replace CLIENT-TOKEN with the value found under Settings > Advanced > Client Token in your App Dashboard.<string> in the key FacebookDisplayName, replace APP-NAME with the name of your app.Info.plist also needs to include the following: You may directly set the automatic collection of App Events to “true” or “false” by adding FacebookAutoLogAppEventsEnabled as a key in Info.plist.



AppDelegate.swift method with the following code. This code initializes the SDK when your app launches, and allows the SDK to handle logins and sharing from the native Facebook app when you perform a Login or Share action. Otherwise, the user must be logged into Facebook to use the in-app browser to login.
// 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. If you are using iOS 13, add the following method to your SceneDelegate so that operations like logging in or sharing function as intended: // 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]
)
}
Use the Facebook Login button in your iOS app.
// 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 sets this token for you and when it sets AccessToken.current it also automatically writes it to the keychain store. AccessToken contains userID which you can use to identify the user. permissions property on the FBLoginButton object.