2010-06-03 50 views
2

我的应用使用WebView小部件从Google AdManager加载广告。 AdManager为您提供一个HTML代码片段,这是90%的JavaScript来调用其服务器以加载图像。无法通过Javascript在WebView中加载图像

  1. 我把他们的html代码片段放到一个字符串中,并使用String.format添加AdManager需要的几个变量。
  2. 我在web视图启用JavaScript(webView.getSettings()setJavaScriptEnabled(真);)
  3. 我串加载到web视图(webView.loadData(myString的, “text/html的”, “UTF-8” );

结果:广告永远不会加载(虽然WebViewClient显示几个.js文件资源加载)

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

为什么会loadUrl工作但loadData不?

顺便说一句,我已验证JavaScript正在运行。我注入了一个脚本来写出一个文本字符串,它的工作原理。

回答

1

从1.5左右开始,WebView中就存在一个bug。尝试使用这条线,看看它是否适合你。

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

是的。那就是诀窍。 谢谢。 – deSelby 2010-06-04 19:25:09