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

FileTransfer does not request more time than the 5 second limit when placed in background.

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.2.0
    • Fix Version/s: 2.7.0
    • Component/s: cordova-ios
    • Labels:
      None
    • Environment:

      iOS 6.0.1, Cordova 2.2.0.

      Description

      I've been running into an issue using FileTransfer on iOS that cropped up as part of my upgrade to Cordova 2.2. Previously I had been on PhoneGap 1.2 (a long time between upgrades I know). When using the 1.2 version, I could start a filetransfer upload (using sample code from here: http://docs.phonegap.com/en/2.2.0/cordova_media_capture_capture.md.html#Capture) and it would continue to run if I returned to the home screen or if I locked the device. Now it appears that suspending the app will cause a FileTransferError to occur with error code 3 and error message "The request timed out".

      After trading some emails with Shazron, he pointed out that the limit to finish up background tasks is 5 seconds. If the task will take longer, the app has to request more time – and FileTransfer does not do this currently (although the CDVLocalStorage plugin in onResignActive does: https://github.com/apache/cordova-ios/blob/master/CordovaLib/Classes/CDVLocalStorage.m#L378

        Attachments

        1. CDVFileTransfer.h
          3 kB
          Leif Ullman
        2. CDVFileTransfer.m
          25 kB
          Leif Ullman

          Issue Links

            Activity

              People

              • Assignee:
                agrieve Andrew Grieve
                Reporter:
                ltullman Leif Ullman
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: