Как войти в систему с помощью TWRequest в удобной для пользователя форме?

Посмотрев на класс Apple TWRequest (и пример), я был удивлен, что у него нет возможности представить пользователю экран входа в систему. Единственный способ — проверить, ввел ли пользователь свои учетные данные с помощью [TWTweetComposeViewController canSendTweet] и если нет, то дайте сообщение типа

"Эй, вам нужно вручную перейти в настройки->twitter и ввести учетные данные. Затем вам нужно найти и открыть наше приложение вручную и продолжить"

Мне интересно, кто-нибудь использует такую ​​дерьмовую функциональность :) Например, Facebook iOS SDK 3 внедрил Single Sign On (SSO), который открывает Safari с экраном входа в Facebook и возвращается в ваше приложение после входа в систему.. . Думаю, мне придется вернуться к старому стилю интеграции Twitter с большим количеством сторонних материалов.

пс. Я бы попробовал ShareKit, но мне нужно интегрировать свое приложение с google+, которое в настоящее время не поддерживается в ShareKit.


person Centurion    schedule 18.08.2012    source источник
comment
Не уверен, почему вы думаете, что централизованная обработка учетных данных в любом случае дерьмовая. Та же механика используется для учетных записей электронной почты и т. д.   -  person Till    schedule 18.08.2012
comment
Посмотрите документацию Accounts.framework (класс ACAccount). Вам не обязательно использовать canSendTweet.   -  person Felix    schedule 18.08.2012
comment
@Till, я не против централизованного способа, я просто против недружелюбия к пользователю. Например, в Facebook iOS SDK 3 реализован единый вход (SSO), который открывает Safari с экраном входа в Facebook и возвращается в ваше приложение после входа. Пользователь руководствуется во время входа в систему при использовании классов Facebook. Но это не относится к TWRequest, который заставляет пользователя самостоятельно позаботиться о своем первом входе в систему.   -  person Centurion    schedule 18.08.2012
comment
Объект ACAccount инкапсулирует информацию об учетной записи пользователя, хранящуюся в базе данных учетных записей. Вы можете создавать учетные записи, используя объект ACAccountStore. Объект ACAccountStore предоставляет интерфейс к постоянной базе данных учетных записей. Для каждого пользователя все объекты учетной записи принадлежат одному объекту ACAccountStore.   -  person Till    schedule 18.08.2012
comment
@Till, я не уверен, будет ли достаточно использовать собственные платформы Twitter и Account для создания пользователя. Сообщение указывает, что пользователь не может быть создан с использованием потребительского ключа Twitter и потребительского секрета (stackoverflow.com/questions/8224835/). Вам по-прежнему необходимо использовать OAuth, чтобы получить авторизованный токен доступа и секрет токена доступа.   -  person Centurion    schedule 18.08.2012