0

我目前是 Android 开发的新手,但我正在尝试创建一个简单的 Android 应用程序来打开我的网站并允许您在 WebView 中登录它。但是,我意识到当您退出应用程序并终止其进程并重新启动应用程序时,它会要求您重新登录,而不是保持登录状态。我不知道如何解决这个问题。我已经研究了 CookieManager 的实现,但是,我无法让它正常工作。你能帮我看看我做错了什么吗?

protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        myWebView = (WebView)findViewById(R.id.webView);
        WebSettings webSettings = myWebView.getSettings();
        webSettings.setJavaScriptEnabled(true);
        CookieManager cookieManager = CookieManager.getInstance();
        cookieManager.setAcceptCookie(true);
        cookieManager.acceptCookie();
        String cookie = CookieManager.getInstance().getCookie("myWebsite");
        myWebView.loadUrl("myWebsite");
        myWebView.setWebViewClient(new WebViewClient());
    }
4

1 回答 1

0

我遇到了同样的麻烦。

尝试这样设置WebviewSettings

webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);

并将 cookie 从内存数据库刷新到持久内存。

CookieManager.getInstance().flush()

刷新后,即使完全重新启动应用程序,cookie 也应该存在。

使用以下方式访问 Cookie:

CookieManager.getInstance().getCookie(yourUrlString)
于 2021-01-20T15:47:42.770 回答