Cache images inside HTML code

55 views Asked by At

Let's say I have a piece of HTML markup like this:

<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Negat enim definiri rem placere, sine quo fieri interdum non potest, ut inter eos, qui ambigunt, conveniat quid sit id, de quo agatur, velut in hoc ipso, de quo nunc disputamus. <mark>Memini vero, inquam;</mark> Et ego: Tu vero, inquam, Piso, ut saepe alias, sic hodie ita nosse ista visus es, ut, si tui nobis potestas saepius fieret, non multum Graecis supplicandum putarem. Qui ita affectus, beatum esse numquam probabis; <b>Bonum valitudo: miser morbus.</b> Duo Reges: constructio interrete. Et quis a Stoicis et quem ad modum diceretur, tamen ego quoque exponam, ut perspiciamus, si potuerimus, quidnam a Zenone novi sit allatum. Quid, si reviviscant Platonis illi et deinceps qui eorum auditores fuerunt, et tecum ita loquantur? Princeps huius civitatis Phalereus Demetrius cum patria pulsus esset iniuria, ad Ptolomaeum se regem Alexandream contulit. <b>At certe gravius.</b></p>

<img src="https://unsplash.it/600/300/?random" alt="Mountain View" style="width:100%;">

<p>Praeterea sublata cognitione et scientia tollitur omnis ratio et vitae degendae et rerum gerendarum. Quid paulo ante, inquit, dixerim nonne meministi, cum omnis dolor detractus esset, variari, non augeri voluptatem? Sapientia enim et animi magnitudinem complectitur et iustitiam, et ut omnia, quae homini accidant, infra se esse iudicet, quod idem ceteris artibus non contingit. Nam illud quidem adduci vix possum, ut ea, quae senserit ille, tibi non vera videantur. At enim, qua in vita est aliquid mali, ea beata esse non potest. Habebat tamen rationem valitudinis: utebatur iis exercitationibus, ut ad cenam et sitiens et esuriens veniret, eo cibo, qui et suavissimus esset et idem facillimus ad concoquendum, vino et ad voluptatem et ne noceret. Quae tamen a te agetur non melior, quam illae sunt, quas interdum optines. Nam quod ita positum est, quod dissolutum sit, id esse sine sensu, id eius modi est, ut non satis plane dicat quid sit dissolutum.</p>

I'll get it from JSON response from the server, like:

{
 ...
 "content":"<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. .......",
 ...
}

I want to show it in WebView widget. If the internet connection is available - the content is shown w/o any problems. But if I disable connection and reload WebView, then I can't see images.

Is there a way to cache images inside such HTML code?

P.S. my web view setup:

view.webView.settings.setAppCachePath(context.cacheDir.absolutePath) view.webView.settings.allowFileAccess = true view.webView.settings.setAppCacheEnabled( true )

if (isNetworkAvailable) {
view.webView.settings.cacheMode = WebSettings.LOAD_DEFAULT } else {
view.webView.settings.cacheMode = WebSettings.LOAD_CACHE_ELSE_NETWORK }

0

There are 0 answers