Help us understand the problem. What is going on with this article?

TwitterKit で Callback URL not approved っておこられた話

More than 1 year has passed since last update.

最近、Twitter のログイン、ツイート機能などを利用できる SDK、TwitterKit を触る機会があったのですが、
つい最近まで問題なく動作していたコードが突然エラーになっていたので、その解決方法をメモしておきます

開発環境

Swift: 4.0.3
Xcode: 9.2
iOS: 11.2

TwitterKit

公式のSDKで、自身が開発したアプリ内で Twitter のログイン、ツイート機能などを実装するために使用

詳しい TwitterKit を用いたログイン、ツイート機能などの実装方法は後述の参考サイトをご参照ください

※TwitterKit は2018年10月31日をもってサポート終了予定のようです
Twitter Kit SDK のサポート終了のお知らせ

今回怒られたエラー内容

TwitterKit のが提供している以下のコードから生成できるログインボタンをタップした際、

let loginButton = TWTRLogInButton(logInCompletion: { session, error in
            // 何らかの処理
        })
loginButton.center = self.view.center
self.view.addSubview(loginButton)

以下のようなログが出力され、ログイン画面に遷移できませんでした

Callback URL not approved for this client application.
Approved callback URLs can be adjusted in your application settings

コールバック URL が承認されていないよって怒られました

ついこの間まで問題なく使用できていたのに、、、

解決方法

2018年06月12日に認証周りの仕様変更が行われたようで、
連携アプリの設定画面で、call back URL を設定しなくてはならなくなったようです

連携アプリの設定画面を開き、Settings タブから Callbacks URLs を設定します
この時、設定するフォーマットは twitterkit-{連携アプリの Consumer Key}:// とします
スクリーンショット 2018-06-14 0.08.40.png

ちなみに、連携アプリの Consumer Key は、Keys and Access Tokens タブから確認できます

参考させていただいたサイト

[iOS 11] Social.framework廃止に伴い、アプリにTwitter機能を実装する方法

nwatabou
iOS Engineer 見習い 一人前になれるよう頑張ります。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away