我发现android.webkit.CookieManagerworks自api级别9以来,所以我认为自从android2.3包含后它会起作用。但最近我发现它在android2.3.6上没有用。
// setCookie方法
CookieSyncManager.createInstance(this.activity);
CookieSyncManager.getInstance().startSync();
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie();
cookieManager.setCookie(cookie_url,cookieNameString);
CookieSyncManager.getInstance().sync();
我已经在android3.2和android4.1.2上测试了它,一切正常。
答案 0 :(得分:0)
我认为你正在制作一个安卓漏洞:
https://code.google.com/p/android/issues/detail?id=16543
removeAllCookie()调用启动一个线程,然后该线程与调用线程并行运行,并可以删除您使用setCookie()添加的cookie。解决方法是仅删除特定域的cookie,如果您知道哪些域是。
似乎已在较新的Android设备中修复 - 我无法在4.1或4.2上重现该问题。