Android WebView加载不到cookie

以下配置根据需求酌情添加,建议逐个试验,cookie操作不是内存操作,建议修改配置后卸载app再重新运行防止缓存影响测试结果。

1.设置应用程序的 WebView 实例是否应发送并接受 Cookie

java 复制代码
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);

2.设置支持js,cookie一般都是通过js写入

java 复制代码
webView.getSettings().setJavaScriptEnabled(true);

3.在Android 4.4及以下的系统,webview是默认接收第三方cookie的。但是,从android 5.0开始,webview默认是不接受第三方cookie的

java 复制代码
if(Build.VERSION.SDK_INT > Build.VERSION_CODES.KITKAT) { 
     CookieManager.getInstance().setAcceptThirdPartyCookies(mWebView,true);
}

4.允许跨域

java 复制代码
// 允许跨域请求
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
    webSettings.setAllowUniversalAccessFromFileURLs(true);
}else {
    // 对于低于API 16的版本,使用如下方式
    webSettings.setAllowUniversalAccessFromFileURLs(false);
}
相关推荐
TroubleMaker1 小时前
OkHttp源码学习之retryOnConnectionFailure属性
android·java·okhttp
叶羽西2 小时前
Android Studio IDE环境配置
android·ide·android studio
发飙的蜗牛'3 小时前
23种设计模式
android·java·设计模式
花追雨12 小时前
Android -- 双屏异显之方法一
android·双屏异显
小趴菜822712 小时前
安卓 自定义矢量图片控件 - 支持属性修改矢量图路径颜色
android
氤氲息12 小时前
Android v4和v7冲突
android
KdanMin12 小时前
高通Android 12 Launcher应用名称太长显示完整
android
chenjk412 小时前
Android不可擦除分区写文件恢复出厂设置,无法读写问题
android
袁震12 小时前
Android-Glide缓存机制
android·缓存·移动开发·glide
工程师老罗12 小时前
Android笔试面试题AI答之SQLite(2)
android·jvm·sqlite