swift labo

[swift]Facebook SDK for iOS でログイン / 認証ができない・クラッシュする(iOS9.x / iOS10.x)場合の解決(解消)方法&原因

Introduction

菅藤 亮兵 (Ryohei Kanto)

菅藤 亮兵 (Ryohei Kanto)

株式会社lord 取締役・Web Developer  Web系のサービス・アプリ開発なんかを主にやってます。 サイトを作ったりコンサル(主にEC)なんかもします。 たまにブログ書いたりもしてます。


LATEST POSTS

[swift4.0.2]UILabel(ラベル)のフレーム(幅)をテキスト(文字数)に合わせてコードで自動調整(フィット)する方法 28th November, 2017

[Swift]UILabel(ラベル)のテキスト改行をStoryboard(ストーリーボード)から入れる方法 26th April, 2017

Facebook SDK for iOS

[swift]Facebook SDK for iOS でログイン / 認証ができない・クラッシュする(iOS9.x / iOS10.x)場合の解決(解消)方法&原因

Posted on

[環境]
Xcode: 9.3
Swift: 4.1
iOS: 9.3.5
iOS: 10.3.3
iOS: 11.2.6
iOS: 11.3

僕たちが開発・提供しているアプリ「RootTrip(ルートトリップ)」にて、
iOSが11になり、Facebook SDK for iOS を最新版(4.32.0)にした際に、
iOS11.xのデバイスではFacebookログイン・認証が通るが、iOS9.x / iOS10.xのデバイスだとFacebookログイン・認証が通らず、アプリがクラッシュしてしまうという現象が発生しました。
その解決(解消)方法と原因を紹介します。

【どのような現象か】
1) 「次へ」をタップする

2) 白い画面で止まってしまう&先に進まない(クラッシュする)

【解決(解消)方法】
AppDelegate.swiftの該当箇所を下記のようにします。

これで正常にFacebookログイン・認証が通るようになります。

【原因】
確実ではないのですが、
Pods > FBSDKCoreKit > FBSDKApplicationDelegate.m
この「FBSDKApplicationDelegate.m」131行目あたりをみてもらえればと思いますが、
iOS9.0以降からreturnされる値が変わるからみたいです。

菅藤 亮兵 (Ryohei Kanto)

菅藤 亮兵 (Ryohei Kanto)

株式会社lord 取締役・Web Developer  Web系のサービス・アプリ開発なんかを主にやってます。 サイトを作ったりコンサル(主にEC)なんかもします。 たまにブログ書いたりもしてます。

Navigation