【Firebase : Auth】新しいFirebaseでtwitter LoginにおけるLoginできない問題

最近、googleによってリボーンされたmbaas:Firebaseですが、twitter クライアントログインを実装するときにはまったところがあったので備忘録的にメモ。

 

今回こちらのドキュメントに従って、ゴリゴリ進めてたのですが、

どうしても、最後のログイン結果を取得する

において、 ログインがうまくいかなくてつまっていました。 (エラーはこんな感じ↓)

なんだろうかい?とすすめていたところ

Twitterの開発者コンソールでアプリを登録したときに取得したAPIキー(Firebaseに事前登録してる)と

アプリからFirebaseに認証用に送られているキーがどうやら違うらしいことが判明。

 

そんで、結局の原因は、Fabricでした。

どうやらFabricはキーを自動生成して毎回違うキーを発行しているみたい。

 

 

なので、これを止めてあげましょう。

FabricドキュメントのAdvanced Settingにキーを指定するように書いてあったので、

AppDelegateにおいて、こんなかんじに設定!!

 

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
        // Override point for customization after application launch.
        FIRApp.configure()
        // ここ!!!!!!!
        Twitter.sharedInstance().startWithConsumerKey("キー", consumerSecret: "シークレットキー")
        Fabric.with([Twitter.self()])
        return true
    }

参考:

 

これで、Firebaseに認証用に登録しておいたキーと一致したキーが送信されるので、ログインがうまくいきます!

 

ちなみに、この辺とかも同じ問題かかえてたみたい。