WKWebview: Игнорирование запроса на загрузку этого основного ресурса, потому что он находится вне песочницы - PullRequest
1 голос
/ 23 января 2020

В нашем приложении мы используем SDK библиотеки readium для загрузки файла epub. WKWebview не удалось загрузить файл epub, так как epub был загружен с сервера и сохранен в пути к документу.

WKwebview имеет проблемы с доступом к этому файлу.

Примечание: - То же самое работает в симуляторе, но не на реальном устройстве.

Ниже приведен журнал консоли:

Получен неожиданный URL-адрес от веб-процесса: 'file : /// вар / мобильные / Контейнеры / данные / приложения / C2D90A * * -D0C9-4D52 тысяча двадцать-одна-A4C8-B6EB7181DB9E / Документы / Книги / 81004325324010 / C8FFB99F71D319A460F954F2C12EA296 / содержание / 2aabc318-3199-4275-aed2-e7fbf57d626e / OEBPS / Текст /cover.htm '2020-01-23 20: 13: 27.800321 + 0530 Папирус [819: 168410] [Процесс] 0x102130c18 - WebPageProxy :: Игнорирование запроса на загрузку этого основного ресурса, поскольку он находится вне песочницы 2020-01-23 20 : 13: 27.800395 + 0530 Папирус [819: 168410] [Process] kill () возвратил неожиданную ошибку 1

file path which is not loading in simulator debugger screenshot in device debugger screenshot

1 Ответ

0 голосов
/ 09 марта 2020

Это проблема с правами доступа, возможно, это ошибка WKWebView, но у меня работают следующие шаги:

[1] Получить доступ,
Позвонить loadFileURL* Функция 1008 * с базовым URL-адресом, для которого требуется доступ.
open func loadFileURL(_ URL: URL, allowingReadAccessTo readAccessURL: URL) -> WKNavigation?

[2] Загрузка содержимого HTML,
Вызов loadHTMLString функция после loadFileURL функция с тем же базовым URL-адресом для загрузки содержимого.
open func loadHTMLString(_ string: String, baseURL: URL?) -> WKNavigation?

...