Ошибка приложения - "DiskImageCache: не удалось разрешить абсолютный путь старого каталога". - программирование
Подтвердить что ты не робот

Ошибка приложения - "DiskImageCache: не удалось разрешить абсолютный путь старого каталога".

Я работаю над приложением, где я показываю данные, введенные пользователем в файле PDF. Файл PDF также создается динамически.

Все это прекрасно.

Я реализовал фреймворк QuickLook для отображения pdf файла. Когда я называю структуру QL, идентификатор файла PDF отображается очень хорошо, но когда он возвращается на экран вызова, мое приложение выходит из строя без каких-либо аварийных сообщений или предупреждений памяти.

Я вызываю QL с кодом ниже:

[[self navigationController] presentModalViewController:qlPreviewer animated:YES];

Созданные журналы:

DiskImageCache: Could not resolve the absolute path of the old directory.
[Switching to process 3070 thread 0x17603]
[Switching to process 3070 thread 0x15503]

Это довольно интересно..... Когда я запускаю ту же программу в Инструментах для проверки утечек и управления памятью, я могу найти утечки при прокрутке документа PDF и просмотре всех страниц. Тем не менее, интересно, что нет приложения, которое я вижу. Кроме того, я попытался с ZombieEnabled = YES и без него, но без приложения с инструментами.

Я совершенно не понимаю, как это интерпретировать и пытались решить разные вещи. Кроме того, я попробовал UIWebView, но результат тот же.

Я снова пытался что-то проверить и нашел что-то интересное. Когда я выполняю код непосредственно из X-Code - я получаю аварийный сигнал, как описано выше.

В другом случае, если я запустил приложение, нажав на приложение в симу... no crash

Мне еще нужно проверить это на устройстве. Может ли кто-нибудь подтвердить сбой на устройстве?

Кроме того, у Google нет ответа на этот вопрос.

Заранее благодарим за ваши ответы. Может ли кто-нибудь пролить свет на это?

4b9b3361

Ответ 1

У меня такая же проблема.

В качестве обходного пути вы можете отключить или удалить свою контрольную точку "Все исключения". Это может сделать отладку немного сложнее, но это не так плохо, как необходимость постоянно запускать приложение.

The breakpoint causing the issue

Это точка останова, вызывающая проблему. Я установил это так давно, что забыл, что это было там

Ответ 2

Удаление приложения с устройства помогло мне решить эту проблему. Возможно, сначала вам следует попробовать "Продукт > Очистить", чтобы все ресурсы были скопированы на ваше устройство.

Ответ 3

Я смог исправить мой код:

FirstViewController.h

NSURLRequest* reqObj;
@property(nonatomic, retain) NSURLRequest* reqObj;

FirstViewController.m

reqObj = [NSURLRequest requestWithUrl:url cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60.0];

NSURLConnection* conn = [[NSURLConnection alloc] initWithRequest:reqObj delegate:self];

то вместо того, чтобы загружать его на моем представлении после этой строки, я ждал connectionDidFinishLoading, а затем загрузил его в свое представление

Ответ 4

Интересно: это только началось с моего приложения. Нет ошибок при проверке утечек, но запуск приложения в симу фактически вызывает точку останова, а не сбой. Я могу нажать на продолжение, и приложение продолжает работать, без проблем.
Моя проблема также связана с PDF, но я просто использую веб-представление для отображения PDF файла из набора приложений. Я проверил все в dealloc, все это хорошо, это может быть ошибка iOS 5.1. Я буду обновлять, когда узнаю больше.

Ответ 5

@JimP, это не ошибка iOS 5.1. Это только что началось с моим приложением, а также на iOS5.0. Похоже, что это касается только pdf-страниц с длиной более одной страницы и, по-видимому, чаще всего запускается при прокрутке за конец документа (хотя иногда и раньше). Это также, как представляется, происходит чаще при втором нагружении.

Ответ 6

Это может произойти, когда вы удаляете ссылку на объект в коде, но имеете ссылку в xib. Удалите выход, который вам больше не нужен.

Ответ 7

Просто столкнулся с проблемой загрузки pdf файла в приложении, которое я конвертирую в iOS 8. Это приложение работает отлично с первого iPhone. Я просто удалил контрольную точку All Exceptions, чтобы обойти ее.

Ответ 8

Я не знаю, была ли такая же проблема, но у меня была проблема, когда переключение с PDF-представления на другой более трех раз через контроллер панели вкладок вызвало сбой.

Оказалось, что встраивание представлений, с которыми я переключался в навигационных контроллерах, останавливает процесс сбоя.