如何通过删除cookie注销Twitter帐户?

时间:2012-01-18 10:41:15

标签: android android-emulator

我想通过删除它创建的cookie来注销我的Twitter帐户。我可以使用代码

来检索twitter创建的cookie
String twit_cookie = getCookie ("http://www.twitter.com");

但是我怎样才能删除twitter创建的cookie,因为removeAllCookie()会删除浏览器创建的所有cookie。如何通过URL或名称删除特定的cookie ???

请帮忙......

2 个答案:

答案 0 :(得分:3)

CookieManager类有一个方法setCookie。你有没有试过它:

setCookie("http://www.twitter.com", null);

或者

setCookie("http://www.twitter.com", "auth_token=''");

答案 1 :(得分:3)

您可以使用方法CookieManager#setCookie(String url, String value)。正如文档中所述:

  

为给定的网址设置Cookie。具有相同主机,路径和名称的任何现有cookie都将替换为新cookie。

"最清楚"方法是将twitter创建的所有cookie设置为过期(过去的一个时间)。来自this answer的代码几乎是正确的,除非日期是将来的 修改后的代码:

final String domain = "http://www.twitter.com";
CookieSyncManager.createInstance(this);
CookieManager cookieManager = CookieManager.getInstance();
String cookiestring = cookieManager.getCookie(domain); //get all cookies
String[] cookies =  cookiestring.split(";");
for (int i=0; i<cookies.length; i++) {
    String[] cookieparts = cookies[i].split("="); //split cookie into name and value etc.
    // set cookie to an expired date
    cookieManager.setCookie(domain, cookieparts[0].trim()+"=; Expires=Wed, 31 Dec 2000 23:59:59 GMT");
}
CookieSyncManager.getInstance().sync(); //sync the new cookies just to be sure