美文网首页
WebView设置Cookie和LocalStorage

WebView设置Cookie和LocalStorage

作者: 郑永博 | 来源:发表于2019-06-18 11:31 被阅读0次

设置cookie

-------------------
**在loadURL之前调用**
--------------------
 /**
     * 同步一下cookie
     */
    public void synCookies(String url) {
        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.setAcceptCookie(true);
        cookieManager.acceptCookie();
        cookieManager.removeSessionCookie();// 移除
        cookieManager.removeAllCookie();
        /**
         * cookies是在HttpClient中获得的cookie
         */
        String token = PersonInfoUtils.getToken(mContext);
        if (MyTextUtils.isEmpty(token)) {
            return;
        }
        token = token.split(" ")[1];
        cookieManager.setCookie(url, "token=" + token);
        /**
         *  判断系统当前版本,同步方式不一样
         */
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            cookieManager.flush();
        } else {
            CookieSyncManager.createInstance(mContext).sync();
        }

    }

设置LocalStorage 在onPageFinished中调用

 webSettings.setDomStorageEnabled(true);
 webSettings.setAppCacheMaxSize(1024 * 1024 * 8);
 String appCachePath = getContext().getCacheDir().getAbsolutePath();
 webSettings.setAppCachePath(appCachePath);
 private void writeLocalStorage() {
        String key = "token";
        String token = PersonInfoUtils.getToken(mContext);
        if (MyTextUtils.isEmpty(token)) {
            return;
        }
        token = token.split(" ")[1];
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
            if (webView != null) {
                webView.evaluateJavascript("window.localStorage.setItem('" + key + "','" + token + "');", null);
            }
        } else {
            if (webView != null) {
                webView.loadUrl("javascript:localStorage.setItem('" + key + "','" + token + "');");
            }
        }
    }

相关文章

网友评论

      本文标题:WebView设置Cookie和LocalStorage

      本文链接:https://www.haomeiwen.com/subject/vagxqctx.html