LoginSignup
13
14

More than 5 years have passed since last update.

iOS9でのFacebookログイン

Last updated at Posted at 2016-04-26

iOS9でFacebookログインの実装方法のまとめです。
今回は画面にFacebookのログインボタンを表示する方法です。

Facebook Developerへの登録とSDKのダウンロード

Facebook Developerでアプリを登録し、SDKをダウンロード。

info.plistの登録

Facebook Developerで登録したFacebookAppID、FacebookDisplayNameをinfo.plistに追加する。
またLSApplicationQueriesSchemesを以下のように設定する。

スクリーンショット 2016-04-26 23.21.36.png

framework追加

Facebook DeveloperからダウンロードしたSDKから以下のframeworkをプロジェクトに追加する。

  • FBSDKCoreKit.framework
  • FBSDKLoginKit.framework

ViewControllerの実装

FBSDKLoginButtonDelegateを実装したViewControllerを以下のように実装する。

ViewController.swift
import UIKit
import FBSDKCoreKit
import FBSDKLoginKit

class ViewController: UIViewController, FBSDKLoginButtonDelegate {
    func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) {
        print("Logged In Success")
        if (error != nil) {
            print(error.debugDescription)
        } else if (!result.isCancelled) {
            // ログイン成功
        }
    }

    func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) {
        // ログアウトに必要な処理を実装
    }

    override func viewDidAppear(animated: Bool) {
        if (FBSDKAccessToken.currentAccessToken() == nil) {
            // トークンがない場合は未ログインなので、ログインボタンを表示
            print("Not Logged In")
            let loginView : FBSDKLoginButton = FBSDKLoginButton()
            self.view.addSubview(loginView)
            loginView.center = self.view.center
            loginView.readPermissions = ["public_profile", "email", "user_friends"]
            loginView.delegate = self
        }
    }


}

実行時の画面

未ログイン時

Simulator Screen Shot 2016.04.26 23.27.19.png

ログイン後

Simulator Screen Shot 2016.04.26 23.30.06.png

13
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
13
14