Я работаю с twitter SDK для интеграции с приложением ios.Когда я выполняю все шаги, создаю ключ клиента и помещаю его в свое приложение.Когда я запускаю приложение, он показывает "[TwitterKit] обнаружил ошибку с сообщением
"Error obtaining user auth token.": Error Domain=TWTRLogInErrorDomain Code=-1 "Callback URL not approved for this client application. Approved callback URLs can be adjusted in your application settings" UserInfo = {NSLocalizedDescription=Callback URL not approved for this client application. Approved callback URLs can be adjusted in your application settings"
Как решить эту проблему?





Перейти к https://apps.twitter.com
Затем во вкладке «Настройки» вашего приложения. Заполните форму «Обратные ссылки».
Согласно этой документации, я думаю, вам просто нужно ввести действительный URL-адрес: https://github.com/twitter/twitter-kit-ios/wiki/Installation
NOTE: Although the callback URL will not be requested by Twitter Kit in your app, it must be set to a valid URL for the app to work with the SDK.
У меня была такая же проблема, и документация TwitterKit не точна, или Twitter изменил свою политику. В любом случае на сайте Twitter Apps URL-адрес обратного вызова должен быть установлен очень конкретно. URL-адрес обратного вызова должен быть в формате:
twitterkit-{consumer/api key}://
Например:
twitterkit-128238aKjqlp123AKdasdf://
Кроме того, это должно быть точно так же зарегистрировано в вашем Info.plist:
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>twitterkit-128238aKjqlp123AKdasdf</string>
</array>
</dict>
Дополнительная документация приведена здесь: https://developer.twitter.com/en/docs/basics/callback_url.html
Спасатель жизни, я не понимаю, как твиттер не сообщает об этом в своей документации. Спасибо.
@AmroShafie У меня такая же ошибка, я не знаю, как ее решить, предположим, что ключ API равен 123, тогда обратный вызов URL-адреса должен быть: twitterkit-123: //
@ Al-shimaaAdel Вы добавляли этот URL-адрес обратного вызова в свое приложение и платформу apps.twitter.com на вкладке настроек?
хороший ответ с примером Спасибо
Хорошо, это было очень полезно. Вы должны указать, чтобы добавить правильный обратный вызов на сайте разработчиков Twitter как: twitterkit- "consumerKey": //
застрял в "Перенаправляю вас в приложение". Но до того, как сафари предупредит меня о недопустимом URL-адресе.
Я попытался добавить URL-адрес и схему URL-адресов в файл info.plist, но я все еще сталкиваюсь с той же проблемой. Я использую firebase SDK для входа в Twitter.
Привет всем, вот простое исправление, которое сработало для меня.
Перейти к: https://apps.twitter.com Зайдите во вкладку настроек. Под URL-адресом Условий использования снимите флажок, который говорит: «Невозможно заблокировать обратный вызов» Теперь протестируйте свое приложение.
Спас мою жизнь. Спасибо! У меня была эта проблема на Android для устройств без установленного приложения Twitter.
@BoldijarPaul Я делаю то же самое, но все еще сталкиваюсь с проблемой. вы можете помочь
@UsamaSadiq для меня это сработало, сняв этот флажок, потому что на Android он отображал веб-просмотр ... Я не могу вам помочь больше, чем это ... извините
в деталях приложения Twitter нет опции под названием Unable Callback Locking
Я только что добавил в поле URL-адреса обратного вызова twitterkit-<api/consumer Key>://.
Если у вас есть apiKey, например abc, вам следует добавить twitterkit-abc://. Это работает для iOS, для Android просто добавьте twittersdk://.
Вы, сэр, неизмеримо спасаете жизнь. Вы должны это знать :) Блин, если бы только Твиттер немного больше позаботился о нас, сторонних разработчиках, без которых платформа была бы абсолютно ничем ... Неужели это слишком много - просить только надлежащую документацию с вашим официальным SDK?
Большое спасибо за ответ.
Это лучший ответ. Какая уловка. Я много боролся. Просто сработало для меня. Спасибо.
Отличный и точный ответ, полезный как для Android, так и для iOS. Большое спасибо !!
Для iOS вам нужно добавить этот twitterkit-consumerkey: //
Чтобы исправить эту проблему, сделайте следующее:
[Обязательный]
Добавьте CallbackURL в панель управления, как показано ниже:
Для iOS:
twitterkit-CONSUMERKEY: //
Для Android:
twittersdk: //
Ссылка на помощь:
https://twittercommunity.com/t/ios-twitter-login-error-code-415/107775
[Примечание: Замените свой ключ клиента вместо слов CONSUMERKEY в приведенном выше формате]
Я использую Android Studio, и у меня это тоже сработало. Просто добавил twittersdk: // в поле CallbackURL в apps.twitter.com. Спасибо.
Я добавил CallbackURL, но все еще сталкиваюсь с той же проблемой, что и использую firebase SDK для входа в Twitter.
если у вас установлено приложение - оно открывается - но выдает ошибку - Ссылка открытия в браузере Safari, поскольку хост не внесен в белый список: twitterkit-1234: // callback? app = 1234 & oauth_token = 2 & oauth_veri fier = 2
Наконец я нашел решение для своего случая. Надеюсь, это поможет кому-то другому
Поместите это в поле обратного вызова URL.
twittersdk: //
См .: https://github.com/twitter/twitter-kit-android/issues/135
Но что, если вы не используете twitterkit (ныне вышедший на пенсию)?