#android #cookies #android-webview #httpcookie
#Android #файлы cookie #android-webview #httpcookie
Вопрос:
У меня есть приложение для Android, в котором есть экран входа в систему. При нажатии кнопки входа в систему я запускаю веб-просмотр с переданными ему файлами cookie. Итак, я могу видеть содержимое веб-страницы в веб-представлении.
Но когда я нажимаю на ссылки загруженной веб-страницы, запрос завершается, и оттуда веб-страница не загружается. Как передавать файлы cookie таким образом, чтобы после входа в систему я мог неустанно просматривать любое количество веб-страниц.
Ответ №1:
Попробуйте это..
WebView webview = new WebView(this);
webview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return super.shouldOverrideUrlLoading(view, url);
}
});
CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(webview.getContext());
cookieSyncManager.startSync();
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
cookieManager.removeSessionCookie();
cookieManager.setCookie(URL, COOKIE);
cookieSyncManager.sync();
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(URL);
setContentView(webview);
Ответ №2:
Вы не должны покидать свой веб-просмотр. Перехватите ссылку и загрузите URL-адрес в свой собственный веб-просмотр
WebView webview = new WebView(this);
webview.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
view.loadUrl(url);
return true;
}
});
setContentView(webview);
webview.loadUrl(yourUrl);