2013-10-21 202 views
0

我有以下腳本,我需要在瀏覽器中顯示。我嘗試使用WebView loadData和loadDataWithBaseURL加載 ,但沒有成功(空視圖)。 我可能錯過一些與MIME編碼等通過webView加載html/javascript

<head> 
<meta name='viewport' content='width=device-width'/> 
<script type='text/javascript'  src='http://www.googletagservices.com/tag/js/gpt_mobile.js'></script> 
    <script type='text/javascript'>eval(window.location.search.substring(1));googletag.cmd.push(function(){googletag.defineSlot('/7047/AppCamoli_Iphone_Transition_Splash',[320,480],'div-gpt-ad-2935936626049-0').addService(googletag.pubads());googletag.enableServices();});</script> 
</head> 
<body style="margin:0; padding: 0;"> 
<div id='div-gpt-ad-2935936626049-0'> 
    <script type='text/javascript'> 
     document.getElementById('div-gpt-ad-2935936626049-0').id='div-gpt-ad-2935936626049-0';googletag.cmd.push(function(){googletag.display('div-gpt-ad-2935936626049-0')}); 
    </script> 
</div> 
</body> 

我的代碼如下:

public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.web); 

    try { 
     webView = (WebView) findViewById(R.id.webView1); 
     webView.getSettings().setJavaScriptEnabled(true); 
     Intent i = getIntent(); 
     boolean typeURL = i.getBooleanExtra("urlType", true); 
     String url = i.getStringExtra("url"); 
     if (typeURL) 
      webView.loadUrl(url); 
     else { 
      //String html = "<html><body>You scored <b>hello world</b> points.</body></html>"; 
      String html = "<html><head><meta name='viewport' content='width=device-width'/><script type='text/javascript' src='http://www.googletagservices.com/tag/js/gpt_mobile.js'></script><script type='text/javascript'>eval(window.location.search.substring(1));googletag.cmd.push(function(){googletag.defineSlot('/7047/AppCamoli_Iphone_Transition_Splash',[320,480],'div-gpt-ad-2935936626049-0').addService(googletag.pubads());googletag.enableServices();});</script></head><body style='margin:0; padding: 0;'><div id='div-gpt-ad-2935936626049-0'><script type='text/javascript'>document.getElementById('div-gpt-ad-2935936626049-0').id='div-gpt-ad-2935936626049-0';googletag.cmd.push(function(){googletag.display('div-gpt-ad-2935936626049-0')});</script></div></body></html>"; 
      //webView.loadDataWithBaseURL(null, html, "text/javascript", "UTF-8", null); 
      webView.loadData(html, "text/javascript", "UTF-8"); 
     } 
    } catch (Exception e) { 
     Log.e("webView","failed to load URL"); 
     e.printStackTrace(); 
    } 
} 

這將導致一個空的web視圖。

感謝,

西蒙

+0

後您的一些Android的代碼之後添加

webView.setWebChromeClient(new WebChromeClient()); 

....更重要的是,後告知什麼什麼錯誤你有....「沒有成功」不提供很多信息 – Martin

+0

我編輯了問題以添加代碼和結果。 – Simon

回答

0

你嘗試修改WebSettings,並啓用JavaScript?

webview.getSettings().setJavaScriptEnabled(true); 
+0

是的,這是完成的。 – Simon

0

我在THIS鏈接有答案。

「你錯過了本教程中的一部分,在那裏他加入

webView.getSettings().setJavaScriptEnabled(true);"