私は実際に WebView にセッションを記録しています。しかし、私は httpclient も使用して、Web からデータを送受信します。WebView のコンテンツを取得することは不可能であることをインターネットで見たので、httpclient を使用して Web サービスからデータを取得する必要がありました。
問題は、この Web サービスがセッションを使用することです...私のセッションは WebView にあるため、httpclient にはセッションがなく、Web サービスのコンテンツにアクセスできません。
この問題に関する多くの投稿を目にしますが、解決策がわかりませんでした。
onPageStarted で行ったことは次のとおりです。
CookieManager mgr = CookieManager.getInstance();
Log.i( "URL", url );
Log.i("Cookie",mgr.getCookie("mywebsite.com"));
String cookie_string = mgr.getCookie("mywebsite.com");
if(cookie_string.length() > 1) {                    
    Data.instance().getPref().edit().putString("cookie",cookie_string).commit();
}
この種のものがあることがわかったので、それらにもセッションが含まれることを願っています:(番号を削除します)
__utma=......(number)......; 
__utmc=number;
__utmz=number.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); 
wt3_eid=%number%number; 
wt3_sid=%number
次に、この Cookie を httpclient に設定するために何をすればよいかわかりません。私はそれを試してみましたが、成功しませんでした:
HttpClient client = new DefaultHttpClient();
BasicCookieStore cookieStore = new BasicCookieStore();
String login_cookie_string = Data.instance().getPref().getString("cookie", "");
String[] cookie_parts = null;
if(login_cookie_string.length()> 0)
{
    //debug_view.setText(login_cookie_string);
    Log.d("COOKIE", login_cookie_string);
    cookie_parts = login_cookie_string.split(";");
    for(int t=0;t < cookie_parts.length;t++)
    {
        String[] cookieContent = cookie_parts[t].split("=");
        Cookie login_cookie = new BasicClientCookie(cookieContent[0],cookieContent[1]);
        ((BasicClientCookie) login_cookie).setDomain("mywebsite.com");
        cookieStore.addCookie(login_cookie);
    }
}
((AbstractHttpClient) client).setCookieStore(cookieStore);