weixin_41159044 2021-09-27 15:49 采纳率: 100%
浏览 122
已结题

在华为鸿蒙系统组件:webview中 getCookie能取到数值,但是每次结束app进程,cookie数值就不见了。

做一个webview组件,思路如下:

用户首次登陆,cookie为空,webivew.load(url),然后通过onPageLoaded获得cookie,再setCookie,下次用户二次登陆可以直接登陆而不用输入账号密码。

代码如下:

url1 = "https://www.chiphell.com/";
webView = (WebView) findComponentById(ResourceTable.Id_webview);
webView.getWebConfig().setJavaScriptPermit(true);
cookieStore = CookieStore.getInstance();
cookieStore.setCookieEnable(true);
cookieStore.setCrossDomainCookieEnable(webView, true);

if (cookieStore.getCookie(url1) == null) {/%ra2
    webView.load(url1);
} else {
    String[] cookies = cookieStore.getCookie(url1).split(";");
    for (int i = 0; i < cookies.length; i++) {
        cookieStore.setCookie(url1,cookies[i]);
    }
    cookieStore.persist();
    webView.load(url1);
}

webView.setWebAgent(new WebAgent() {

    @Override
    public boolean isNeedLoadUrl(WebView webView, ResourceRequest request) {
       
        return true;
    }
    @Override
    public void onPageLoaded(WebView webView, String url) {
        super.onPageLoaded(webView, url);
        cookieStore.setCookieEnable(true);
        cookieStore.setCrossDomainCookieEnable(webView, true);
        cookieStore.getCookie(url1);
        cookieStore.persist();
    }
});

在setCookie中能看到key=value值,但是app进程一结束,cookie就失效。此问题困扰我好几天,望各位不吝赐教!谢谢!

  • 写回答

1条回答 默认 最新

  • churuxu 2021-09-27 18:37
    关注

    反正都能获取了,那就自己保存到文件吧

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月8日
  • 已采纳回答 9月30日
  • 创建了问题 9月27日

悬赏问题

  • ¥50 三种调度算法报错 有实例
  • ¥15 关于#python#的问题,请各位专家解答!
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥20 java在应用程序里获取不到扬声器设备