Android WebView 支持H5 DOM Storage


vue項目里,路由不跳轉,Storage存儲有問題

使用html5的 localStorage 存不進去也讀不出來

mWebView.getSettings().setDomStorageEnabled(true);

什么是DOM Storage

HTML5 是下一代 HTML 標准,開始吸引越來越多人的目光。HTML5 的 DOM Storage 機制提供了一種方式讓程序員能夠把信息存儲到本地的計算機上,在需要時獲取。這點和 cookie 相似,區別是 DOM Storage 提供了更大容量的存儲空間。 
DOM Storage 分為 sessionStorage 和 localStorage。 
localStorage 對象和 sessionStorage 對象使用方法基本相同,它們的區別在於作用的范圍不同。sessionStorage 用來存儲與頁面相關的數據,它在頁面關閉后無法使用。而 localStorage 則持久存在,在頁面關閉后也可以使用。

Android中如何支持

Android 中WebView是一款很強大的控件。如何支持H5的本地存儲呢? 
如下設置即可(本公司App就是這樣設置,是可行的)

private WebView mWebView;
...
//初始化操作
private void initmWebView() {
        //設置支持JS
        mWebView.getSettings().setJavaScriptEnabled(true); 
        // 設置支持本地存儲
        mWebView.getSettings().setDatabaseEnabled(true);
        //取得緩存路徑
        String path = getActivity().getApplicationContext().getDir("cache", Context.MODE_PRIVATE).getPath();
        //設置路徑
        mWebView.getSettings().setDatabasePath(path);
        //設置支持DomStorage
        mWebView.getSettings().setDomStorageEnabled(true);
        //設置存儲模式
        mWebView.getSettings().setCacheMode(WebSettings.LOAD_DEFAULT);
        //設置適應屏幕
        mWebView.getSettings().setUseWideViewPort(true);
        mWebView.getSettings().setLoadWithOverviewMode(true);
        mWebView.getSettings().setSupportZoom(true);
        mWebView.getSettings().setBuiltInZoomControls(true);
        mWebView.getSettings().setDisplayZoomControls(false);
        //設置緩存
        mWebView.getSettings().setAppCacheEnabled(true);
        mWebView.requestFocus();
        //下面三個各種監聽
        mWebView.setWebChromeClient(wcc);
        mWebView.setDownloadListener(dl);
        mWebView.setWebViewClient(wvc);
        //加載連接
        mWebView.loadUrl(XXXXXXXX);
    }

補充一下:APP內所有的WebView都要配置這個

 

多個參考文檔:

http://blog.csdn.net/carson_ho/article/details/52693322

http://www.cnblogs.com/oakpip/archive/2011/04/08/2009800.html

http://blog.csdn.net/hello_12413/article/details/48895913

http://www.cnblogs.com/yuzhongwusan/p/4211681.html

http://www.oschina.net/question/111965_108361?sort=time


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM