Использование webView loadDataWithBaseURL не загружает изображения с SDCard

Я хотел бы установить HTML-контент в моем веб-просмотре с некоторыми картинками. Я прочитал в Интернете, что для этого нужно использовать loadDataWithBaseUrl, потому что мне нужно связать папку с изображениями.(basUrl) с целью.

Мой HTML контент прекрасно загружается, я могу даже отлично запустить javascripts, но по какой-то причинеmy images cannot be loaded.

Где-то я читал, что есть некоторые соображения безопасности, и поэтому я не могу загрузить изображения с SD-карты в веб-просмотр, а некоторые говорят, что это легко сделать.via loadDataWithBaseUrlтак что я действительно не знаю, какой из них является правдой.

Вот мой метод, который я попробовал, может быть, с некоторыми ошибками, так что не хамите:

I got my html file here:

mnt/sdcard/com.mypackage.myproject/3/3.html

My images are here:

mnt/sdcard/com.mypackage.myproject/3/images/Cover.png

And this is my content loading:

myWebView.loadDataWithBaseURL("file:///mnt/sdcard/com.mypackage.myproject/3", myHtml, "text/html", "utf-8", "");

In my html code:

<img src="images/Cover.png" alt="Cover.png" height="820"/>

Итак, как вы видите, я даю baseUrl, и по какой-то причине веб-просмотр не может загрузить мои изображения.

Как многие говорили, это может быть решением:

mWebView = (WebView) findViewById(R.id.webview);
mWebView.getSettings().setAllowFileAccess(true);
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.getSettings().setBuiltInZoomControls(true);
String base = Environment.getExternalStorageDirectory().getAbsolutePath().toString();
String imagePath = "file:/"+ base + "/test.jpg";
String html = "<html><head></head><body><img src=\""+ imagePath + "\"></body></html>";
mWebView.loadData(html, "text/html","utf-8");

BUT, i have 700 different html files and there are many images in many different places... so i cannot modify the html code.

Есть ли способ связать папку изображений с моими HTML-файлами, чтобы правильно использовать их в качестве baseUrl?

Ответы на вопрос(1)

Ваш ответ на вопрос