You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Tony Leung (JIRA)" <ji...@apache.org> on 2015/11/02 19:25:27 UTC
[jira] [Created] (CB-9936) iOS File Transfer not receiving Progress
Event
Tony Leung created CB-9936:
------------------------------
Summary: iOS File Transfer not receiving Progress Event
Key: CB-9936
URL: https://issues.apache.org/jira/browse/CB-9936
Project: Apache Cordova
Issue Type: Bug
Components: Plugin File Transfer
Affects Versions: 1.3.0
Environment: iOS
Reporter: Tony Leung
Priority: Minor
In CDVFileTransfer.m, download() method between line 447 to 462
delegate.connection = [[NSURLConnection alloc] initWithRequest:req delegate:delegate startImmediately:NO];
if (self.queue == nil) {
self.queue = [[NSOperationQueue alloc] init];
}
[delegate.connection setDelegateQueue:self.queue];
@synchronized (activeTransfers) {
activeTransfers[delegate.objectId] = delegate;
}
// Downloads can take time
// sending this to a new thread calling the download_async method
dispatch_async(
dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, (unsigned long)NULL),
^(void) { [delegate.connection start];}
);
If I replaced it with the older version of the code, then it works.
delegate.connection = [NSURLConnection connectionWithRequest:req delegate:delegate];
if (activeTransfers == nil) {
activeTransfers = [[NSMutableDictionary alloc] init];
}
[activeTransfers setObject:delegate forKey:delegate.objectId];
In summary, if we don't use GCD to start the NSURLConnection, it works.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org