我在我的 Android 应用程序中使用了带有 java.net 包的 CookieManager,它就像一个魅力。这是一个代码片段:
import java.net.CookieHandler;
import java.net.CookieManager;
import java.net.CookiePolicy;
import java.net.HttpCookie;
import java.util.List;
private class MyCookieManager
{
private CookieManager mCookieManager = null;
MyCookieManager() {
mCookieManager = new CookieManager();
mCookieManager.setCookiePolicy(CookiePolicy.ACCEPT_ALL);
CookieHandler.setDefault(mCookieManager);
}
private List<HttpCookie> getCookies() {
if(mCookieManager == null)
return null;
else
return mCookieManager.getCookieStore().getCookies();
}
public void clearCookies() {
if(mCookieManager != null)
mCookieManager.getCookieStore().removeAll();
}
public boolean isCookieManagerEmpty() {
if(mCookieManager == null)
return true;
else
return mCookieManager.getCookieStore().getCookies().isEmpty();
}
public String getCookieValue() {
String cookieValue = new String();
if(!isCookieManagerEmpty()) {
for (HttpCookie eachCookie : getCookies())
cookieValue = cookieValue + String.format("%s=%s; ", eachCookie.getName(), eachCookie.getValue());
}
return cookieValue;
}
}