【发布时间】:2016-03-04 02:15:17
【问题描述】:
我正在创建一个基于 WebView 的 Android 应用程序,使用户能够登录到移动运营商。当我运行应用程序时,WebView 会打开网站,但我收到一条消息,指出 WebView 不允许使用 cookie。我尝试了在这里找到的各种代码,但没有一个有效。谁能帮我?这是我正在使用的代码:
//in oncreate
final CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(this);
final CookieManager cookieManager = CookieManager.getInstance();
cookieManager.setAcceptCookie(true);
cookieManager.removeSessionCookie();
String[] cookies = getCookie("https://myaccount.ee.co.uk/login-dispatch/?fa=register");
for (String cookie : cookies) {
cookieManager.setCookie("https://myaccount.ee.co.uk/login-dispatch/?fa=register", cookie);
}
cookieSyncManager.sync();
webView.loadUrl("https://myaccount.ee.co.uk/login-dispatch/?fa=register");
还有 getCookies 方法:
public String[] getCookie(String siteName) {
CookieManager cookieManager = CookieManager.getInstance();
String cookies = cookieManager.getCookie(siteName);
String[] cookiesArray = cookies.split(";");
return cookiesArray;
}
【问题讨论】:
-
您得到的关于 webview 不允许 cookie 的确切信息是什么?您是否将其视为 UI 上的警报或 logcat 中的消息或其他地方?
-
@keno 我从他们的网站收到一条消息说 cookie 不可用
标签: android cookies android-webview android-websettings android-cookiemanager