据我所知,无法保存您的会话并在 Activity 重新启动后重新创建。
唯一的一种方法是将您的HttpClient 代码放入服务中。通过这种方式,您可以玩活动,而不必担心会话中断。
你可以在 这里Services找到文档
服务器会话使用 cookie。
默认情况下,Android cookie 已启用,您无需担心。
当然,您可以存储 Cookie,但我看不出它可以以某种方式帮助您解决问题的原因。
无论如何,这是一种获取 Cookie 的技术:
List<Cookie> mCookies = null;
mCookies = httpclient.getCookieStore().getCookies();
if (mCookies.isEmpty()) {
Log.d("test_runner", "Cookies: None");
} else {
for (int i = 0; i < mCookies.size(); i++) {
System.out.println("- " + mCookies.get(i).toString());
Log.d("test_runner", "Cookies: [" + i + "]" + mCookies.get(i).toString());
}
}
这是一种如何将它们放回去的方法:
CookieStore cookieStore = new BasicCookieStore();
for(Cookie cook : mCookies){
cookieStore.addCookie(cook);
}
httpclient = new DefaultHttpClient(params);
httpclient.setCookieStore(cookieStore);