在loadurl()之前在android webview DOMStorage中保存数据

时间:2015-10-01 21:36:06

标签: javascript android json webview

我想在webview中加载网址之前在webview DOM存储中保存一些数据。

到目前为止我做了什么...... 的 AndroidActivity.java

webView = (WebView) findViewById(R.id.webView);

CookieSyncManager.createInstance(webView.getContext()); // Deprecated
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
String cookieString = "auth-token="+ LoginService.getCookie()+";
domain=.example.com";
cookieManager.setCookie("http://example.com", cookieString);
CookieSyncManager.getInstance().startSync(); // Deprecated

Map<String, String> cookie = new HashMap<String, String>();
cookie.put("Cookie", "auth-token=" + LoginService.getCookie());

webView.setWebViewClient(new CustomBrowser());
final WebSettings settings = webView.getSettings();
settings.setLoadsImagesAutomatically(true);
settings.setAppCacheEnabled(true);
settings.setJavaScriptEnabled(true);
settings.setDomStorageEnabled(true);
webView.setScrollBarStyle(WebView.SCROLLBARS_INSIDE_OVERLAY);

// set below mentioned data in DOM Storage...

webView.loadUrl(url, cookie);

private class CustomBrowser extends WebViewClient {
    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url){
        view.loadUrl(url);
        return true;
    }
}

在webview加载我的网址之前,我想在DOM存储中放置一个JSON,其密钥为"app.identity",值如下所示:

{"username":"shobhit@gmail.com","roles":{"ROLE_Student_Trial":true,"ROLE_student":true,"ROLE_Student_Unlimited":true},"type":"student","lastLogin":1443704579000,"token":"123"}

我是android的新手,我知道在javaScript中的方式,我们可以使用localStorage.setItem('key', JSON.stringify(value));

在本地存储中保存数据

0 个答案:

没有答案