[
https://issues.apache.org/jira/browse/CB-7764?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15031138#comment-15031138
]
Eugene Gekhter commented on CB-7764:
------------------------------------
Stepping through this same issue, it occurs in the
ALAssetsLibraryAssetForURLResultBlock at NSUInteger bufferSize =
[assetRepresentation getBytes:buffer fromOffset:start length:size error:nil];
If the video to be uploaded is 1GB (~10 minutes) it will consume 1GB of memory
and crash the app.
> Cordova 3.4.1 + FileTransfer 0.4.0 on iOS 7.1.2 fails to upload large files
> (> 200MB)
> -------------------------------------------------------------------------------------
>
> Key: CB-7764
> URL: https://issues.apache.org/jira/browse/CB-7764
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin File Transfer
> Environment: iOS
> Reporter: Vladimir Mitrokhin
> Labels: no-repro, triaged
>
> Cordova 3.4.1 + FileTransfer 0.4.0 on iOS 7.1.2
> Upload file < 250 works, > 250 doesn't work.
> Simple app built from the file transfer sample code.
> https://github.com/Vladimir40491a/myrepository
> Sample code (iOS Simulator test):
> {code}
> function testUpload() {
> // Get file URL to video file. In this case I used a 520MB file
> var imageURI = "file:///Users/shazron/Downloads/video.mp4";
> var options = new FileUploadOptions();
> options.fileKey = "file";
> options.fileName = imageURI;
> options.mimeType= "video/mp4";
> options.chunkedMode = true;
>
> var ft = new FileTransfer();
>
> ft.onprogress = function(progressEvent) {
> var loaded = Number(((progressEvent.loaded / progressEvent.total) *
> 100).toFixed(1));
> console.log(loaded);
> };
>
> // upload to local server, use
> https://github.com/apache/cordova-labs/tree/cordova-filetransfer
> ft.upload(imageURI, encodeURI("http://localhost:8000/upload"),
> successUploadFileToServ, failUploadFileToServ, options);
> }
> function successUploadFileToServ(r) {
> console.log('Success FileTransfer method upload.');
> console.log(r);
>
> navigator.notification.alert('Video file has been successfully loaded',
> null, 'Upload file', null);
> }
> function failUploadFileToServ(error) {
> console.log('Error FileTransfer method upload.');
> console.log(error);
>
> navigator.notification.alert('FileTransfer: Code = ' + error.code + ';
> Sourse = ' + error.sourse + '; Target = ' + error.target + '; http_status = '
> + error.http_status, null, 'Error Upload file', null);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]