在WebView中启用HTML5

时间:2014-06-30 07:14:19

标签: android html5 android-webview

您好我必须打开一个使用HTML5WebView创建的网页。

根据我的需要,我在webView中启用了所有这些设置

    mWebView.getSettings().setPluginsEnabled(true);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
    mWebView.getSettings().setSupportMultipleWindows(true);
    mWebView.getSettings().setSaveFormData(false);
    mWebView.getSettings().setSavePassword(false);
    mWebView.getSettings().setDomStorageEnabled(true);

    mWebView.getSettings().setAllowFileAccess(true);
    mWebView.getSettings().setLightTouchEnabled(true);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.getSettings().setBuiltInZoomControls(true);
    mWebView.getSettings().setUseWideViewPort(true);
    mWebView.getSettings().setLoadWithOverviewMode(true);

并且还添加了

android:hardwareAccelerated="true"

在Manifest.xml文件中

但问题是网页未在WebView内正确加载。 UI正在被覆盖。 当我在设备的默认浏览器中加载WebPage时,它的加载很好但不在WebView内。

如何在HTML5内正确加载WebPage WebView

请帮忙。 提前谢谢

2 个答案:

答案 0 :(得分:0)

mWebView.setWebViewClient(new Callback());  // call this in `onCreate()`



private class Callback extends WebViewClient
    {
        @Override

        public boolean shouldOverrideUrlLoading(WebView w, String s)
        {
            mWebView.loadData(URL, "text/html", "UTF-8");  // load the webview

            return true;
        }
    }

答案 1 :(得分:0)

            webview1.getSettings().setAppCacheMaxSize(5*1024*1024);
            webview1.getSettings().setAppCachePath(getApplicationContext().getCacheDir().getAbsolutePath());
            webview1.getSettings().setAllowFileAccess(true);
            webview1.getSettings().setAppCacheEnabled(true);
            webview1.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
            webview1.getSettings().setLoadWithOverviewMode(true);
            webview1.getSettings().setUseWideViewPort(true);
            webview1.getSettings().setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
            webview1.getSettings().setDomStorageEnabled(true);
            webview1.getSettings().setSaveFormData(true);
            webview1.getSettings().setBuiltInZoomControls(true);
            webview1.getSettings().setDisplayZoomControls(false);
            webview1.getSettings().setLoadWithOverviewMode(true);
            webview1.getSettings().setUseWideViewPort(true);
            webview1.getSettings().setLoadWithOverviewMode(true);
            webview1.getSettings().setUseWideViewPort(true);
            final WebSettings webSettings = webview1.getSettings();
            final String newUserAgent;
            newUserAgent = "Mozilla/5.0 (Android) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36";
            webSettings.setUserAgentString(newUserAgent);
            webview1.loadUrl("your url here");