はじめに
ただの殴り書き備忘録ですので、荒いです。
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
- 作成したHeader Fileに以下を追記。
# import <FacebookSDK/FacebookSDK.h>
build settings
- info.plistをいじる
plistはSupporting Files以下にあります。
作成したFacebookアプリのAPP IDを使います。
- key = "FacebookAppID", type = String, value = your AppID
- key = "FacebookDisplayName", type = String, value = your App Name
- 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
コード
該当箇所を追記・変更
@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
}
@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)
set class of button
Segue
Facebookアカウントのセット
iOS SimulatorのGeneralからFacebookアカを入力しておきます。
これでとりあえず動きます。
反省
途中から疲れて、適当な感じになってしまったのはごめんなさい。
todoアプリ http://tech.camph.net/?p=363