开发者

Can't Load Image in WebView via Javascript

My app uses a WebView widget to load ads from Google AdManager. AdManager gives you an HTML snippet, which is 90% JavaScript to cal开发者_如何学编程l their server for the image to load.

  1. I put their html snippet into a string and use String.format to add in several variables that AdManager requires.
  2. I enable JavaScript on the WebView (webView.getSettings().setJavaScriptEnabled(true);)
  3. I load the string into the WebView (webView.loadData(myString, "text/html", "UTF-8");

result: the ad never loads (although the WebViewClient shows several .js resources loading).

If I take that exact string and create a file and then use webView.loadUrl("file:///android_asset/test.html"), the image loads properly.

Why would loadUrl work but loadData does not?

BTW, I've verified that JavaScript is running. I injected a little script to write out a text string and it works.


There is a bug in WebView that's been there since about 1.5. Try using this line instead and see if it works for you.

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

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜