首页 文章

无法通过Javascript在WebView中加载图像

提问于
浏览
2

我的应用使用WebView小部件从Google AdManager加载广告 . AdManager为您提供了一个HTML代码段,它是90%的JavaScript来调用服务器来加载图像 .

  • 我将他们的html片段放入一个字符串中,并使用String.format添加AdManager所需的几个变量 .

  • 我在WebView上启用了JavaScript(webView.getSettings() . setJavaScriptEnabled(true);)

  • 我将字符串加载到WebView(webView.loadData(myString,"text/html","UTF-8");

结果:广告从不加载(尽管WebViewClient显示了几个.js资源加载) .

如果我采用那个确切的字符串并创建一个文件,然后使用webView.loadUrl(“file:///android_asset/test.html”),图像会正确加载 .

为什么loadUrl会工作但loadData不工作?

顺便说一下,我已经确认JavaScript正在运行 . 我注入了一个小脚本来写出一个文本字符串,它的工作原理 .

1 回答

  • 1

    WebView中存在一个自1.5左右就存在的错误 . 请尝试使用此行,看看它是否适合您 .

    webView.loadDataWithBaseURL("fake://fake.com", myString, "text/html", "UTF-8", null);
    

相关问题