У меня есть тестовый PDF-файл, который я хочу открыть в iBooks через мое приложение. Я сохранил его в своем временном каталоге, и я использую этот код, чтобы загрузить его в интерактивные книги:UIDocumentInteractionController открытие pdf в iBooks сбоях
NSURL *targetURL = [NSURL fileURLWithPath:tempFullPath];
NSLog(@"Path is %@", tempFullPath);
UIDocumentInteractionController *controller = [UIDocumentInteractionController interactionControllerWithURL:targetURL];
controller.delegate = self;
controller.UTI = @"com.adobe.pdf";
[controller presentOpenInMenuFromRect:self.view.bounds inView:self.view animated:YES];
меню появляется только штрафом, но когда я нажимаю кнопку интерактивных книг сбоев приложения и вешаю мою Xcode.
Путь к файлу я получаю в моем выходе NSLog как это:
Path is /private/var/mobile/Applications/65EC4182-A79B-431C-9E74-BD72D91A31AB/tmp/TestFile.pdf
Что я делаю неправильно? Заранее спасибо!
Какая ошибка отображается в консоли? Что такое трассировка стека? Где ваше приложение падает? – rmaddy
Приложение @rmaddy падает после того, как я ударил значок iBooks в 'UIDocumentInteractionController'pop, и я получаю сообщение' Thread 1: EXC_BAD_ACCESS (code = 1, address = blah blah) 'в Xcode. –
Включите зомби и посмотрите, отправлено ли сообщение на освобожденный объект. Скорее всего, проблема в том, что вы не держите ссылку на 'UIDocumentInteractionController', поэтому ее освобождают слишком рано. – rmaddy