WebView не показывает локальный контент в сборке выпуска - PullRequest
0 голосов
/ 11 июля 2020

У меня странная проблема с отображением локальных данных в WebView. В моем проекте ни loadData, ни loadDataWithBaseUrl просто не работают специально в сборке релиза. Отображение содержимого с URL-адреса с loadUrl отлично работает как при отладке, так и при выпуске, но мне нужно показать локальные данные. Ошибка выглядит примерно так:

"Web page not available The web page at data:text/html; charset=utf-8;charset=utf-8;base64, could not be loaded because: net::ERR_INVALID_RESPONSE"

Есть много вопросов по stackoverflow с этой ошибкой, но все они либо решают проблемы с кодировкой, либо указывают c на некоторые Android версия. Я пробовал решения из бесчисленного количества ответов, но он лишь немного меняет текст внутри ошибки (эта часть data:text/html; charset=utf-8;charset=utf-8;base64). Также в моем случае у всех версий android есть проблема, и я не использую никаких специальных символов в содержимом html или чем-то еще, просто самый простой из возможных документов:

<html><body>test</body></html>

Единственный способ показать локальные данные в WebView - это создать новый проект с нуля. В новом проекте все просто работает. Это заставляет меня думать, что проблема связана с некоторой конфигурацией проекта. Не знаю, в Gradle, Proguard, Dexprotector это что-то или что-то еще.

Кто-нибудь может дать совет, что это может быть?

Ответы [ 2 ]

0 голосов
/ 11 июля 2020

Отключение Publi DexProtector c Привязка клавиш фактически заставляет его работать. Теперь нужно как-то настроить это для работы с Publi c Key Pinning.

0 голосов
/ 11 июля 2020

Было бы лучше сменить версию android SDK. Также прикрепите сюда свой исходный код,

...