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);
}
相关推荐
darkb1rd2 小时前
五、PHP类型转换与类型安全
android·安全·php
gjxDaniel2 小时前
Kotlin编程语言入门与常见问题
android·开发语言·kotlin
csj502 小时前
安卓基础之《(22)—高级控件(4)碎片Fragment》
android
峥嵘life3 小时前
Android16 【CTS】CtsMediaCodecTestCases等一些列Media测试存在Failed项
android·linux·学习
stevenzqzq4 小时前
Compose 中的状态可变性体系
android·compose
似霰4 小时前
Linux timerfd 的基本使用
android·linux·c++
darling3316 小时前
mysql 自动备份以及远程传输脚本,异地备份
android·数据库·mysql·adb
你刷碗6 小时前
基于S32K144 CESc生成随机数
android·java·数据库
TheNextByte17 小时前
Android上的蓝牙文件传输:跨设备无缝共享
android
言之。7 小时前
Kotlin快速入门
android·开发语言·kotlin