У меня есть приложение для Android, которое включает в себя действие под названием Help В нем используется WebView для отображения содержимого справки в формате HTML. Активность Thie может быть вызвана двумя способами: либо передачей URL, либо прямым текстовым контентом. Единственный URL, который я когда-либо передавал, это "файл:///android_asset/help/index.html" (который является страницей HTML, включенной в мои активы в APK).
Передача URL-адреса отлично работает на моем HTC Desire под управлением Android 2.2. Он также работает в эмуляторе под управлением Android 3.0. Однако, когда я пытаюсь использовать его в эмуляторе с Android 4.0, похоже, вместо этого он пытается запустить веб-браузер, чтобы отобразить пустую страницу; Когда я закрываю это, я возвращаюсь в свою справочную деятельность, также показывая пустую страницу.
Передача прямого текстового содержимого отлично работает на всех версиях Ive. Документация WebView гласит: "Обратите внимание, что для того, чтобы ваша активность имела доступ к Интернету и загружала веб-страницы в WebView, вы должны добавить Разрешения INTERNET для вашего файла манифеста Android:" Но мне нет необходимости в доступе к Интернету как таковому, я просто хочу отобразить страницу моей внутренней справки. И это работало над версиями Android до 4.0.
Это ошибка в Android 4? Или это просто то, что я неправильно понял? Спасибо за любую помощь.
Я обновил последнюю неделю с 2.3.4 до 4.0 на моем HTC Sensation. В двух приложениях, которые я написал, был локальный сайт HTML-Contact. На 2.3 он прошел отлично, теперь я получаю сайт "Веб-страница недоступен".
Я нашел еще одно сообщение на этом сайте с комментарием: "Через некоторое обсуждение с инженером Google кажется, что они приняли решение о том, что схема файла://небезопасна".
Смотрите здесь: Android 4.0.1 разбивает локальное хранилище WebView HTML 5