Я использовал UIActivityViewController, чтобы поделиться чем-то для своего приложения. Он хорошо работает на любом устройстве до iOS8. Проблема заключается в том, что текст, изображения не отображаются в электронной почте, Twitter, Facebook на устройстве iOS 8 или в симуляторе.
Вот мой код:
NSString *textObject = @"Test";
NSString *urlString = @"http://test.com";
UIImage* image = [UIImage imageNamed:@"logo"];
NSURL *url = [NSURL URLWithString:urlString];
NSArray *activityItems = [NSArray arrayWithObjects:textObject, url, image, nil];
UIActivityViewController *avc = [[UIActivityViewController alloc]
initWithActivityItems:activityItems
applicationActivities:nil];
avc.excludedActivityTypes = @[UIActivityTypePostToWeibo, UIActivityTypeAssignToContact, UIActivityTypeCopyToPasteboard ];
[self presentViewController:avc animated:YES completion:nil];
Я сделал что-то не так? Спасибо.
ИЗМЕНИТЬ:
Новый Xcode 6.1 и iOS 8.1 не решают проблему. И это вызывает сбой в электронной почте. Вот несколько скриншотов (в качестве примера возьмем обмен электронной почтой):
- В iOS 7 (вы можете увидеть изображение)
- В iOS 8 (пустой экран)
И приложение вылетает с исключением "MailCompositionService". Часть сообщения об ошибке:
Процесс: MailCompositionService [3775] Путь:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/Applications/MailCompositionService.app/MailCompositionService Идентификатор: MailCompositionService Версия:
1.0 (1.0) Тип кода: X86-64 (собственный) Родительский процесс: launchd_sim [3725] Ответственный: launchd_sim [3725] ID пользователя: 501Дата/время: 2014-10-22 10:31:19.064 +0800 Версия ОС:
Mac OS X 10.10 (14A389) Версия отчета: 11 Анонимный UUID:
B1EC6B56-DD7F-36A3-1506-B8CE84AB3FEBВремя бодрствования с момента загрузки: 9800 секунд
Разбитая нить: 0 Очередь отправки: com.apple.main-thread
Тип исключения: EXC_CRASH (SIGABRT) Коды исключений:
0x0000000000000000, 0x0000000000000000Специфическая информация о приложении: * Завершение работы приложения из-за неперехваченного исключения 'NSInvalidArgumentException', причина: '* -[NSRegularExpression enumerateMatchesInString:options:range:usingBlock:]: nil аргумент' завершение с необработанным исключением типа NSException abort () называется CoreSimulator 110.4 — Устройство: iPhone 6 — Время выполнения: iOS 8.1 (12B411) — Тип устройства: iPhone 6