前々から告知されていたけど、2018/06/13にTwitter認証のコールバックURLをコード側で任意に変えることができなくなった。
TwitterKitはこの、コード側で任意にコールバックURLを変更できる仕様を前提として作られているので、当然のようにブラウザ経由でのログインができなくなってしまう。
解決策書いてる人もいて、それ試してみたけど動かなかったのでコード読んでみた。
TwitterKit for iOSとTwitterKit for AndroidではコールバックURLの仕様が異なっているので、両方を https://apps.twitter.com のコンソール上で指定する必要がある。
url scheme | code | |
---|---|---|
TwitterKit for Android | twittersdk:// | OAuth1aService.java#L59 |
TwitterKit for iOS | twitterkit-YOUR_CONSUMER_KEY:// | TWTRLoginURLParser.m#L39 |
TwitterKitも近いうちにサポートなくなってしまうのでなんとかしないとなあ…
twitter-kit-iosのコードを眺めてたら、 コンソールからtwittersdk://
を設定しておけばそれで動いてくれそうな記述があった。
フォールバック的な挙動にも見えるけど、結論twittersdk://
だけ設定しておけばよさそう。