Сохраните логин cookie для Webview в другом действии - PullRequest
0 голосов
/ 03 января 2019

У меня есть веб-просмотр, если пользователь не авторизуется, он всегда возвращает страницу входа.В деятельности AI есть веб-просмотр с контентом - форма входа в систему, после успешного входа в систему веб-просмотр покажет MyPage web, в MyPage у меня есть ссылка TagertBlank, есть свойства target="_blank", поэтому при нажатии на ссылку TargetBlank мне нужно открыть действиеB есть веб-просмотр, чтобы загрузить TargetBlank ссылку.Мне нужно сохранить логин cookie из Webview в действии A, чтобы установить cookie в действии B в Webview, поэтому при вызове Webview в A onPageFinished я получаю cookie и сохраняю в общих настройках с кодом

String cookies = CookieManager.getInstance().getCookie(url);
SharedPrefs.getInstance().put(SharedPrefsKey.KEY_COOKIE_WEB_VIEW, cookies);

и в Activity BI установите cookie для веб-просмотра с кодом:

String cookies = SharedPrefs.getInstance().get(SharedPrefsKey.KEY_COOKIE_WEB_VIEW, String.class);
            String[] splitCookies = cookies.split(";");
            CookieManager cookieManager = CookieManager.getInstance();
            if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                for (String cookie : splitCookies) {
                    cookieManager.setCookie(urlLoadWebView, cookie.trim());
                }
                cookieManager.flush();
                cookieManager.setAcceptThirdPartyCookies(mWebView, true);
            } else {
                CookieSyncManager.createInstance(mWebView.getContext());
                cookieManager.removeSessionCookie();
                for (String cookie : splitCookies) {
                    cookieManager.setCookie(urlLoadWebView, cookie.trim());
                }
                CookieSyncManager.getInstance().sync();
            }
            mWebView.loadUrl(urlLoadWebView);

но веб-просмотр в B всегда получается на странице входа в систему, поэтому я регистрирую cookie-файл в действии B и вижу, что он не является образцом cookie-файла при входе в A. Как я могу сохранить и установить cookie-файлвойти в систему для просмотра веб-сайта в B?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...