2

我在 Android 4.0.4 的 WebView 中遇到了 Google-Charts 的问题

我有一个带有 Google 图表的小页面,所以如果我在浏览器中显示这个 html 页面,图表就会显示得很好。如果我在 Samsung Galaxy 7 (Android 2.2) 上启动我的应用程序,Google-Chart 也会在 WebView 中显示得很好。但是,如果我在三星 Galaxy 10.1 (Android 4.0.4) 上启动相同的应用程序,带有 Google-Chart 的 WebView 只是空的,没有错误消息或其他内容,这可能对调试有用。

本质上,我只是尝试将 Google-Chart URL 加载到 WebView 中:

String url = <google-chart-url>;

// is there something strange with the content?
showContent(url);
WebView webview = ((WebView) findViewById(R.id.webview));
webview.loadUrl(url);

用于验证来自服务器的数据是否正常的小 HTTP 请求:

private void showContent(String url) {

    int TIMEOUT_CONNECTION = 60000;
    int TIMEOUT_SOCKET = 60000;

    // Parameter setzen
    HttpParams httpParams = new BasicHttpParams();
    HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_CONNECTION);
    HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_SOCKET);

    HttpClient httpClient = new DefaultHttpClient(httpParams);
    // Daten holen
    HttpGet getMethod = new HttpGet(url);
    HttpResponse response;
    String raw = new String();

    try {
        response = httpClient.execute(getMethod);

        HttpEntity responseEntity = response.getEntity();
        if(responseEntity != null) {
            raw = EntityUtils.toString(responseEntity);
        }

        Log.d(LOG_TAG, "showContent: " + raw);
    } catch (IOException e) {
        Log.e(LOG_TAG, e.getMessage(), e);
    }
}

我还尝试了不同的 WebView 设置:

WebView webview = (WebView) findViewById(R.id.webview);
// JavaScriptInterface to handle clicks in the WebView
webview.addJavascriptInterface(new HtmlClick(), "clicks");

webview.getSettings().setJavaScriptEnabled(true);
webview.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);

有没有人遇到过类似的问题或有人对实际存在的问题提出建议?

提前致谢 ;)

更新:

三星 Galaxy 10.1 上的浏览​​器也不显示图表;测试:

  • 互联网
  • 铬合金
  • 火狐
  • 歌剧
4

0 回答 0