android h5 使用localStorage存储数据

localStorage在android这边存储数据注意要点总结:
1.打开domStorage

   webSettings.setDomStorageEnabled(true);

2.在onPageFinished里面进行存值

 if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
                view.evaluateJavascript("window.localStorage.setItem('LOGIN_STATUS_TOKEN','" + token + "');", new ValueCallback<String>() {
                    @Override
                    public void onReceiveValue(String value) {
                        LogUtil.d("-----first receive value is "+value);
                    }
                });
            } else {
                view.loadUrl("indow.localStorage.setItem('LOGIN_STATUS_TOKEN','" + token +"');");
                view.reload();
            }

3.一定要设置cacheMode为WebSettings.LOAD_NO_CACHE

webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);

网上几乎没有说这一点的,而我就是没设置,在这个坑里呆了好久。记住,这个一定要设置!!!!!!!
localStorage获取值得方式

String js = "window.localStorage.getItem('LOGIN_STATUS_TOKEN');";
view.evaluateJavascript(js, new ValueCallback<String>() {
                    @Override
                    public void onReceiveValue(String value) {
                      //这个value就是取得的值啦
                    }
                });

附一些其他用法

    sessionStorage.setItem("key","value");//存储
    sessionStorage.getItems(key);//按key进行取值
    sessionStorage.removeItems(key);//按key单个删除
    sessionStorage.clear();//删除全部数据
    sessionStorage.length;//获得数据的数量
    sessionStorage.valueOf();//获取全部值

感谢这个帖子的作者,从里面学到很多。https://blog.csdn.net/qq_42068550/article/details/92795955

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容