LoginSignup
19
19

More than 5 years have passed since last update.

[Swift 1.1] とりあえずFacebookログインをしてみる (Xcode 6.1)

Last updated at Posted at 2014-11-26

はじめに

ただの殴り書き備忘録ですので、荒いです。
storyboardを使っているので一部スクショだけのところもあります。

ログイン用のFacebook アプリを作成する

XcodeへのSDK追加の手順が記載された画面が表示されます。
その支持に従っていろいろやっていけば基本的にできます。
ここを見るのが一番

とりあえずAPP IDを控えておきます。

Facebook SDKをインストール

ここから。
https://developers.facebook.com/docs/ios/getting-started?locale=ja_JP

~/Documents/FacebookSDK に入ってます。

もしくはgitで。

git clone git://github.com/facebook/facebook-ios-sdk.git

Facebook SDKの取り込み

Xcode->Projectをクリック->General tab->"Linked Frameworks and Libraries"(下の方にある) -> click "+"->select "FacebookSDK.framework"

import FacebookSDK

  • 新しいHeader File作成

cmd+n -> ios -> source -> headerfile -> set group

Screen Shot 2014-11-26 at 14.10.20.png

Screen Shot 2014-11-26 at 14.08.37.png

  • 作成したHeader Fileに以下を追記。
#import <FacebookSDK/FacebookSDK.h>

build settings

Screen Shot 2014-11-26 at 13.34.13.png

  • info.plistをいじる

plistはSupporting Files以下にあります。

作成したFacebookアプリのAPP IDを使います。

  1. key = "FacebookAppID", type = String, value = your AppID
  2. key = "FacebookDisplayName", type = String, value = your App Name
  3. key = URL types = Array, dictionary-type child. That dictionary's child:
    key = URL Schemes, type = Array. The Array's child: type = String, value = "fb" + AppID

Screen Shot 2014-11-14 at 14.27.47.png

コード

該当箇所を追記・変更

AppDelegate.swift
@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?


    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

        FBLoginView.self
        FBProfilePictureView.self

        func application(application: UIApplication, openURL url: NSURL, sourceApplication: NSString?, annotation: AnyObject) -> Bool {

            var wasHandled:Bool = FBAppCall.handleOpenURL(url, sourceApplication: sourceApplication)
            return wasHandled

        }

        return true
    }
ViewController.swift
    @IBOutlet var fbLoginView : FBLoginView!

    override func viewDidLoad() {
        super.viewDidLoad()

         self.fbLoginView.delegate = self
        self.fbLoginView.readPermissions = ["public_profile", "email", "user_friends"]

    }


    // Facebook Delegate Methods
    func loginViewShowingLoggedInUser(loginView: FBLoginView!) {

        println("User Logged In")

    }

    func loginViewFetchedUserInfo(loginView: FBLoginView!, user: FBGraphUser!) {

        println(user.name)

    }

    func loginViewShowingLoggedOutUser(loginView: FBLoginView!) {

        println("User Logged Out")

    }

    func loginView(loginView: FBLoginView!, handleError error: NSError!) {

    }

Set Facebook Button(view)

Screen Shot 2014-11-26 at 14.22.46.png

set class of button

Screen Shot 2014-11-26 at 14.23.26.png

Segue

Screen Shot 2014-11-26 at 14.24.12.png

Facebookアカウントのセット

iOS SimulatorのGeneralからFacebookアカを入力しておきます。

これでとりあえず動きます。

反省

途中から疲れて、適当な感じになってしまったのはごめんなさい。

todoアプリ http://tech.camph.net/?p=363

19
19
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
19
19