Позволяет подготовить для печенья хранения:Несколько печенья в CookieManager
CookieSyncManager.createInstance(getApplicationContext());
CookieSyncManager.getInstance().startSync();
CookieManager.getInstance().setAcceptCookie(true);
Затем я помещаю вручную печенье, позволяет сказать PHPSESSID
и RANDOM
CookieManager.getInstance().setCookie("domain.com", "PHPSESSID="+phpSession);
CookieManager.getInstance().setCookie("domain.com", "RANDOM="+random);
позволяет проверить это работает с помощью:
CookieManager.getInstance().getCookie("domain.com");
и получены
PHPSESSID=dba4ff392agd39b5951d10a91a0a7b56; RANDOM=266284790:1466147978:c91d0896bac59e0b
Все выглядит хорошо, но когда я перейти в возможно приложении к одному из WebView
деятельности, которые открывающейся же сайт домена также устанавливающая печенье, а затем, когда я печатаю печенье, как выше это выглядит следующим образом:
PHPSESSID=dba4ff392agd39b5951d10a91a0a7b56;
RANDOM=266284790:1466147978:c91d0896bac59e0b;
PHPSESSID=9ecb5156cf8fc3190fbc69fd13393243;
RANDOM=265078219%3A1463147975%3Ad0448d163e9b2123
дублированные записи ... когда после этого я вручную снова устанавливаю, например, СЛУЧАЙНЫЕ с setCookie
:
PHPSESSID=dba4ff392agd39b5951d10a91a0a7b56;
RANDOM=111111111:2222222222:33333336bac59e0b;
PHPSESSID=9ecb5156cf8fc3190fbc69fd13393243;
RANDOM=265078219%3A1463147975%3Ad0448d163e9b2123
значения, установленные WebView
не переписываются, только мой «вручную» поступил ... как заставить WebView
использовать мой предыдущий набор печенья или перезаписать уже установлен?
Вы нашли причину такого поведения? –
Я закончил с проверкой (сначала), что этот файл cookie существует, если нет, то я открываю 'WebView' (созданный« динамически »в' Activity' с помощью 'new WebView (this)', size 1x1) с URL-адресом , который предназначен только для установки файла cookie. после этого внутри приложения я использую этот файл cookie для запросов webapi. не очень хорошо исправлено ИМХО, но я не нашел лучшего решения:/ – snachmsm