Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-10896

Cookies are not stored for local documents

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: cordova-android
    • Labels:
    • Environment:

      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?)

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              gjm/lbo Gareth McCaughan
            • Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: