Setcookie in cookiemanager does not work on Android

I am using cookiemanager in androidapp. I called the cookiemanager instance and tried to set cookies using the cookiemanager.setcookie (url, string) file.

But my cookiemanager instance does not set any cookies. I tried to check every answer on SO, could not solve the problem. Anyone with ideas will be very helpful.

 public void syncCookieStoreToWebView() {
    PersistentCookieStore myCookieStore = ReferenceHolder.getCookieStore();
    List<Cookie> cookies = myCookieStore.getCookies();

    final CookieSyncManager cookieSyncManager = CookieSyncManager.createInstance(getActivity());
    CookieSyncManager.getInstance().startSync();

    final CookieManager cookieManager = CookieManager.getInstance();
    cookieManager.setAcceptCookie(true);
    if (! cookies.isEmpty()){

        //sync all the cookies in the httpclient with the webview by generating cookie string
        for (Cookie cookie : cookies){
            Cookie sessionInfo = cookie;

            String cookieString = sessionInfo.getName() + "=" + sessionInfo.getValue() + "; domain=" + sessionInfo.getDomain();

            cookieManager.setCookie(ReferenceHolder.BASE_URL, cookieString);



            cookieSyncManager.sync();

        }
        cookieSyncManager.sync();

        System.out.println("COOKIEMAN" + cookieManager.getCookie(ReferenceHolder.BASE_URL));


    }

}
+4
source share
1 answer

A cookie cannot contain a semicolon because a semicolon separator means a string in a cookie string. If you want this, first encode.

0
source

All Articles