TwitterがインストールされていないとTwitterKitで認証できない
2ヶ月以上前から告知はされていたようですが、apps.twitter.comのサイトでTwitterアプリの
登録を行う場合に設定するCallbackURLを厳密に見るようになっていたようです。
Action REQUIRED - Sign in with Twitter users must whitelist callback URLs
現象
この対応をしていない状態で、Twitterアプリがインストールされていない端末で
Twitterへのログインが必要な操作を実行すると、以下のようなエラーが出力されます。
[TwitterKit] did encounter error with message "Error obtaining user auth token.":
Error Domain=TWTRLogInErrorDomain Code=-1
"<?xml version="1.0" encoding="UTF-8"?>
<errors>
<error code="415">
Callback URL not approved for this client application.
Approved callback URLs can be adjusted in your application settings
</error>
</errors>"
原因
Callback URL - Twitter Developer
こちらのドキュメントにあるように、oauth/request_token
のcallback_url
にapps.twitter.comで登録したCallbackURLをちゃんと登録しないといけないようです。
そんなことを言われても、TwitterKitのloginAPIにはcallback_url
パラメータがありません。
解決策
Callback URL Example
こちらで回答されているように、以下のフォーマットでapps.twitter.comのCallbackURLsに追加すると、特にアプリの再申請などをしなくても正常に動作するようになりました。
twitterkit-CONSUMERKEY://
CONSUMERKEY
は、Keys and Access Tokens
にあるApplication Settings
のConsumer Key (API Key)
です。
たとえばキーがAAAAAAAAならば、twitterkit-AAAAAAAA://
になります。
参考
Author And Source
この問題について(TwitterがインストールされていないとTwitterKitで認証できない), 我々は、より多くの情報をここで見つけました https://qiita.com/Takumi_Mori/items/4a59ab1751a3a1e6b501著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .