Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Android
Description
(I am using Android 6.0.1 and Cordova 6.0.0, but I do not believe this issue is strongly version-specific.)
I am building a Cordova application which is a fairly thin wrapper around a small single-page web app. Setting document.cookie in its Javascript code appears to do nothing, and reading document.cookie always returns an empty string.
I believe this is because the document is a local one rather than one served by a remote server, and Android webviews do not by default permit the use of cookies in such documents.
It is possible to change this behaviour by calling CookieManager.setAcceptFileSchemeCookies(true); early enough in the app's lifecycle that no CookieManager object has yet been instantiated. In particular, doing this at the very start of MainActivity.onCreate appears sufficient.
Is there a good reason why this shouldn't be Cordova's default behaviour? (E.g., are such cookies shared between all apps on the device?)