アプリの起動時に Web サービスにログイン リクエストを送信し、Cookie を受け取ります。その Cookie を WebView で使用したいのですが、次のコードを使用します。
List<Cookie> cookies = this.get_my_cookies_from_somewhere();
CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(this);
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.removeAllCookie();
for (Cookie cookie : cookies) {
String rawUrl = (cookie.isSecure() ? "https" : "http") + "://" + cookie.getDomain() + cookie.getPath();
cookieManager.setCookie(rawUrl, cookie.getName() + "=" + cookie.getValue() + "; domain=" + cookie.getDomain());
}
cookieSyncManager.sync();
理想的には、CookieManager が必要とする Cookie の URL と「Set-Cookie」ヘッダーの値を、Cookie クラスまたは何らかのユーティリティ クラスで構築したいと考えています。そのようなものは存在しますか?
RFC2109Spec と RFC2965Spec を試しましたが、「Set-Cookie」ヘッダーではなく「Cookie」ヘッダーが生成されます。