Я использую классический проект Twitter с открытым исходным кодом Ben Gottlieb для создания логина в Твиттере для iPad.
Мой код для создания движка и отображения контроллера входа:
if (!_engine) {
_engine = [[SA_OAuthTwitterEngine alloc] initOAuthWithDelegate:self];
[_engine setConsumerKey:@"kConsumerKey"];
[_engine setConsumerSecret:@"kConsumerSecret"];
}
if (![_engine isAuthorized]){
UIViewController *controller = [SA_OAuthTwitterController controllerToEnterCredentialsWithTwitterEngine:_engine delegate:self];
if (controller){
if ([controller respondsToSelector:@selector(setModalPresentationStyle:)] == YES) {
controller.modalPresentationStyle = UIModalPresentationFormSheet;
}
[self presentModalViewController:controller animated:YES];
return;
}
}
Кроме того, я установил для URL-адресов SA_OAuthTwitterEngine значение https:
self.requestTokenURL = [NSURL URLWithString: @"https://twitter.com/oauth/request_token"];
self.accessTokenURL = [NSURL URLWithString: @"https://twitter.com/oauth/access_token"];
self.authorizeURL = [NSURL URLWithString: @"https://twitter.com/oauth/authorize"];
, а мой TWITTER_DOMAIN в MGTwitterEngine.m был изменен на:
#define TWITTER_DOMAIN @"api.twitter.com/1"
Запуск этого кодаВ симуляторе для iPhone и iPad работает как шарм. ОДНАКО, всякий раз, когда я тестирую этот код на устройстве iPad, я выдаю эту ошибку:
Ух ты!Токен запроса для этой страницы недействителен.Возможно, он уже использовался или срок его действия истек, поскольку он слишком старый.Пожалуйста, вернитесь на сайт или приложение, которое отправило вас сюда, и попробуйте снова;вероятно, это была просто ошибка
(скриншот прилагается).
Будем весьма благодарны за любые предложения о том, как отобразить стандартный экран входа в систему