質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Facebook

Facebookは、実名登録制のSNS(ソーシャル・ネットワーキング・サービス)です。開発者用のデベロッパーサイトが存在し、一般ユーザーによるFacebook向けアプリケーション開発が可能です。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

Q&A

解決済

1回答

1384閲覧

swift FacebookSDKについて

S.T

総合スコア93

Facebook

Facebookは、実名登録制のSNS(ソーシャル・ネットワーキング・サービス)です。開発者用のデベロッパーサイトが存在し、一般ユーザーによるFacebook向けアプリケーション開発が可能です。

Swift 2

Swift 2は、Apple社が独自に開発を行っている言語「Swift」のアップグレード版です。iOSやOS X、さらにLinuxにも対応可能です。また、throws-catchベースのエラーハンドリングが追加されています。

0グッド

1クリップ

投稿2015/11/10 16:41

お世話になります!
facebooksdkを使ってFacebookでログインを実現したいと思っています。

そこで、FacebookSDKを導入しビルドまではいけたのですがログインボタンをタップすると以下のエラーを吐いてしまいます。

[エラー]
question[5086:1754353] *** Terminating app due to uncaught exception 'InvalidOperationException', reason: 'fbauth2 is missing from your Info.plist under LSApplicationQueriesSchemes and is required for iOS 9.0'
*** First throw call stack:
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

自分なりに調べてみた結果、info.plistの問題かと思っているのですが、どこがどう問題なのか判断できていない状況です。

info.plistの状況は以下の通りです。
イメージ説明

ソースコードは以下の通りです。

swift

1import UIKit 2import CoreData 3 4@UIApplicationMain 5class AppDelegate: UIResponder, UIApplicationDelegate { 6 7 var window: UIWindow? 8 9 10 func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { 11 // Override point for customization after application launch. 12 return true 13 } 14 15 func application(application: UIApplication, 16 openURL url: NSURL, 17 sourceApplication: String?, 18 annotation: AnyObject) -> Bool { 19 return FBSDKApplicationDelegate.sharedInstance().application( 20 application, 21 openURL: url, 22 sourceApplication: sourceApplication, 23 annotation: annotation) 24 } 25

swift

1import UIKit 2import FBSDKCoreKit 3import FBSDKShareKit 4import FBSDKLoginKit 5 6class ViewController: UIViewController,FBSDKLoginButtonDelegate { 7 8 override func viewDidLoad() { 9 super.viewDidLoad() 10 // Do any additional setup after loading the view, typically from a nib. 11 if (FBSDKAccessToken.currentAccessToken() != nil) 12 { 13 // ユーザが既にログインしている。次のページへ遷移させたりはここで実行しましょう。 14 } 15 else 16 { 17 let loginView : FBSDKLoginButton = FBSDKLoginButton() 18 self.view.addSubview(loginView) 19 loginView.center = self.view.center 20 loginView.readPermissions = ["public_profile", "email", "user_friends"] 21 loginView.delegate = self; 22 } 23 } 24 25 override func didReceiveMemoryWarning() { 26 super.didReceiveMemoryWarning() 27 // Dispose of any resources that can be recreated. 28 } 29 30 func loginButton(loginButton: FBSDKLoginButton!, didCompleteWithResult result: FBSDKLoginManagerLoginResult!, error: NSError!) { 31 print("Userログイン") 32 33 if ((error) != nil) 34 { 35 //エラー処理 36 } 37 else if result.isCancelled { 38 //キャンセル処理 39 } 40 else { 41 //もし複数の認証を一度に尋ねられたら、特定の認証が抜けていないかを確認しましょう 42 if result.grantedPermissions.contains("email") 43 { 44 //処理 45 } 46 } 47 } 48 49 func loginButtonDidLogOut(loginButton: FBSDKLoginButton!) { 50 print("Userログアウト") 51 } 52 53}

この他、過不足がありましたら是非ご指摘ください。
宜しくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちら解決しました。

一度、プロジェクトを最初から作り直して、Info.plistに以下のコード(IOS9用)を登録したら問題なく動きました。

swift

1<key>FacebookAppID</key> 2<string>Your Facebook App ID</string> 3<key>FacebookDisplayName</key> 4<string>Your Facebook App Display Name</string>

参考サイトも一緒に乗せておきます。
参考サイト

投稿2015/11/11 05:18

S.T

総合スコア93

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問