2010-06-03 60 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