Я видел различные обсуждения проблемы обслуживания страниц WebView из активов, ни одна из которых не казалась окончательной.
Я хочу иметь возможность использовать веб-просмотр для отображения файлов html (и включенных css), хранящихся в ресурсах проекта.
Я обнаружил, что wv.loadUrl( "file:///android_asset/html_no_copy/demo_welcome.html" ) отображает этот файл в порядке, но ссылки в demo_welcome.html, либо локальные (без url, префиксного имени файла), либо абсолютные - та же форма, что и для loadUrl - не работает. Они получают сообщение "Web-страница недоступно", отображаемое в представлении.
WebView wv = (WebView)this.findViewById(R.id.splashWebView);
wv.loadUrl("file:///android_asset/html_no_copy/test.html"); // Works
или
wv.loadUrl("file:///android_asset/html_no_copy/demo_welcome.html"); // Works
Но ни одна из следующих ссылок в demo_welcome.html не работает:
<a href="test.html">CLICK HERE</a><p>
<a href="file:///android_asset/html_no_copy/test.html">OR HERE</a>
Я знаю, что могу обойти это, написав контент-провайдера, но это кажется экстремальным.
Я хочу, чтобы это работало с SDK 1.6 (4) вверх.
Кто-нибудь знает, можно ли это сделать только с помощью HTML-кода, или нужно ли кому-то добавить код для загрузки данных?