https://github.com/doubleencore/DETweetComposeViewController
Я следил за интеграцией с твиттером для поддержки твиттера для ios5 и ios4.
if ([DETweetComposeViewController canSendTweet]) {
DETweetComposeViewControllerCompletionHandler completionHandler = ^(DETweetComposeViewControllerResult result) {
switch (result) {
case DETweetComposeViewControllerResultCancelled:
NSLog(@"Twitter Result: Cancelled");
break;
case DETweetComposeViewControllerResultDone:
NSLog(@"Twitter Result: Sent");
break;
}
[self dismissModalViewControllerAnimated:YES];
};
DETweetComposeViewController *tcvc = [[[DETweetComposeViewController alloc] init] autorelease];
[tcvc addImage:[UIImage imageNamed:@"YawkeyBusinessDog.jpg"]];
[tcvc addURL:[NSURL URLWithString:@"http://www.DoubleEncore.com/"]];
[tcvc addURL:[NSURL URLWithString:@"http://www.apple.com/ios/features.html#twitter"]];
self.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentModalViewController:tcvc animated:YES];
}
else {
self.oAuth = [[[OAuth alloc] initWithConsumerKey:kDEConsumerKey andConsumerSecret:kDEConsumerSecret] autorelease];
TwitterDialog *td = [[[TwitterDialog alloc] init] autorelease];
td.twitterOAuth = self.oAuth;
td.delegate = self;
td.logindelegate = self;
[td show];
}
В учебнике не указано, что такое self.oAuth, поэтому я импортировал oAuthв моем файле интерфейса и объявил oAuth как свойство
У меня сейчас следующие проблемы:
1) приведенный выше код работал, когда я не помещал блок обработчика завершения, после добавления обработчикасборка завершается с ошибкой в DETweetAccountSelectorViewControllerDelegate в строке
#import <Accounts/Accounts.h>
о том, что такой файл или каталог не существует ... чего не было, когда не было обработчика завершения.И да, я теперь связывал и не связывался с платформой учетных записей более 5 раз ... поэтому он работал раньше, а не сейчас.
2) когда я запускаю проект без обработчика завершения, появляется диалоговое окно Twitter.но не могу опубликовать (запрос на авторизацию приходит для моего приложения в твиттере, но после авторизации он застревает) .. консоль входа в систему
отбросила необработанное исключение в webView: managePolicyForNavigationAction: request: frame: SolutionListener: делегат:
также, если я закрываю диалоговое окно .. программа падает, потому что нет кода, чтобы уменьшить контроллер, который я пытался решить с помощью обработчика завершения.
3) если у кого-то есть более простое руководство по интеграции твиттера для ios4 и ios5 .. можете поделиться ...
Спасибо