У меня проблема с новым Twitter.framework, для которого я пока не могу найти решение.
Вот мой код:
if ([TWTweetComposeViewController canSendTweet]){
TWTweetComposeViewController *twitter = [[TWTweetComposeViewController alloc] init];
[twitter addImage:tweetImage];
[twitter setInitialText:initalString];
[twitter addURL:url];
twitter.completionHandler = ^(TWTweetComposeViewControllerResult result) {
if (result == TWTweetComposeViewControllerResultDone) {
dispatch_async(dispatch_get_main_queue(), ^{
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:@"Tweeted"
message:@"You successfully tweeted"
delegate:self cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alertView show];
[alertView release];
});
} else if (result == TWTweetComposeViewControllerResultCancelled) {
dispatch_async(dispatch_get_main_queue(), ^{
UIAlertView* alertView = [[UIAlertView alloc] initWithTitle:@"Twitter"
message:@"Tweet has been canceled"
delegate:self
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alertView show];
[alertView release];
});
}
dispatch_async(dispatch_get_main_queue(), ^{
[self dismissModalViewControllerAnimated:YES];
});
};
[self presentViewController:twitter animated:YES completion:nil];
[twitter release];
}
Кажется,стандартный способ реализации этого, хотя я сделал добавление постановки в очередь в пользовательском интерфейсе в основном потоке.Параметры addImage, setInitialText и addURL все хороши.На самом деле это работает большую часть времени.Проблема, с которой я сталкиваюсь, заключается в том, что иногда, когда TWTweetComposeViewController выделяется, инициализация приложения останавливается, и я вижу " сессия твиттера прервана, перезапуск ... " в консоли.Приложение иногда зависает только на несколько секунд, но чаще оно зависает на неоправданное количество времени (20 - 30 секунд или более), я получу множество таких сообщений, а затем контроллер твиттера, наконец, выскользнет.Иногда также он просто зависает и никогда не возвращается.
Интересно, кто-нибудь видел эту проблему раньше или есть идеи по ее решению?
Заранее спасибо.