Сохранить содержимое веб-просмотра для просмотра в автономном режиме? - PullRequest
8 голосов
/ 09 января 2012

Я хотел бы реализовать приложения, которые позволяют пользователям сохранять веб-страницу, включая изображения.Затем пользователи могут снова просматривать веб-страницу, даже если нет доступа к сети.Однако я обнаружил, что такого связанного API для этого не существует.У кого-нибудь есть идея или опыт?Кто-нибудь может дать какую-нибудь идею или ссылку на исходный код?

1 Ответ

7 голосов
/ 23 февраля 2012

По крайней мере, для основных страниц это должно быть возможно.

(1) Загрузите файл HTML вместо загрузки его непосредственно в WebView. Затем используйте WebView.loadData () или WebView.loadDataWithBaseUrl (), чтобы загрузить страницу в представление. Не ругайте HTML, он понадобится вам позже.

(2) Установите свой собственный WebViewClient, который переопределяет [как минимум] onLoadResource (). Затем сохраните каждый ресурс, запрошенный страницей.

(3) Теперь у вас есть сохраненный HTML-код и все необходимые файлы в файловой системе. Поиск в HTML абсолютных путей, вы захотите обновить их с помощью функции замены, чтобы они были либо относительными путями (и будут работать в файловой системе), либо абсолютными путями, в которые вы сохранили изображения / css / и т.д. (в файловой системе)

(4) Запишите html в файловую систему.

Надеюсь, это поможет.

В качестве альтернативы, вы могли бы, вероятно, сохранить страницу в виде изображения, по сути сделав снимок экрана с WebView. Это не позволило бы копировать / вставлять или щелкать ссылки, но было бы намного проще, если бы все, что вам нужно, это «просмотреть это позже».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...