The following copy and paste, other operations do not need to do too much
After a successful login using the information stored about sp needs just fine
SpUtil spUtil = new SpUtil(this , "UserMsg");
token = spUtil.getString("user_token", "");
userID = spUtil.getInt("userID", 0);
type = spUtil.getString("type", "");
//首先要知道h5页面存储到本地的信息有哪些;(localStorage) -不知道的问你们写h5的同事
//以上这些数据在登录信息里可以获取 -- ;
webTvdetails.setWebChromeClient(new WebChromeClient());
webTvdetails.getSettings().setDatabaseEnabled(true);
WebSettings settings = webTvdetails.getSettings();
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
}
String absolutePath = this.getApplicationContext().getCacheDir().getAbsolutePath();
settings.setAppCachePath(absolutePath);
settings.setJavaScriptCanOpenWindowsAutomatically(true);//设置js可以直接打开窗口,如window.open(),默认为false
settings.setJavaScriptEnabled(true);//是否允许执行js,默认为false。设置true时,会提醒可能造成XSS漏洞
settings.setBuiltInZoomControls(true);
settings.setLoadWithOverviewMode(true);//和setUseWideViewPort(true)一起解决网页自适应问题
settings.setUseWideViewPort(true);
settings.setAllowContentAccess(true);
settings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.SINGLE_COLUMN);
settings.setDomStorageEnabled(true);//DOM Storage
settings.setDatabaseEnabled(true);
settings.setAllowFileAccess(true);
settings.setAppCacheMaxSize(1024 * 1024 * 8); //8倍缓存
settings.setAppCacheEnabled(true);
webTvdetails.setWebViewClient(new WebViewClient() {
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();// 接受所有网站的证书
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
String key = "token"; //这个 “token” 不是随便起的 是看你们H5端存储的是什么,存几个就写几个 QwQ
String key_userID = "userID";
String key_type = "type";
String js = "window.localStorage.setItem('"+ key +"','"+ token +"');";
String js_type = "window.localStorage.setItem('"+ key_type +"','"+ type +"');";
String js_userid = "window.localStorage.setItem('"+ key_userID +"','"+ userID +"');";
String jsUrl = "javascript:localStorage.setItem('"+ key +"','"+ token +"');";
String jsUrl_type = "javascript:localStorage.setItem('"+ key_type +"','"+ type +"');";
String jsUrl_userid = "javascript:localStorage.setItem('"+ key_userID +"','"+ userID +"');";
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.KITKAT) {
view.evaluateJavascript(js , null);
view.evaluateJavascript(js_type , null);
view.evaluateJavascript(js_userid , null);
}else {
view.loadUrl(jsUrl);
view.loadUrl(jsUrl_type);
view.loadUrl(jsUrl_userid);
view.reload();
}
}
});
webTvdetails.loadUrl(“你要加载的页面”);
These are the H5 Andrews and synchronous login hee hee (not write blog forgive me)