[ https://issues.apache.org/jira/browse/CB-6300?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13940817#comment-13940817 ]
nii amon dsane commented on CB-6300: ------------------------------------ Hey [~iclelland]. I've got some interesting behaviour to report. 1. Using toNativeURL() actually works fine when i'm using the camera to grab an image. When the resolve success function runs and I call toNativeURL() on the fileEntry, I get a file URL like this: file:///storage/sdcard0/DCIM/Camera/1395247431562.jpg This is the original file URL that the navigator.camera.getPicture hands back anyway. 2. I can render this in the view and it works correctly. Interesting to note that I was previously trying to render this same URL type and it was not working. I suppose this has something to do with the org.apache.cordova.file-system-roots plugin you asked me to add to the project. 3. When I select a picture from the gallery, I get the file URL with the cache busting query string: file:///storage/sdcard0/Android/data/com.lukaduka.pos/cache/modified.jpg?1395202637809 Passing that through the resolve predictably gives me the absolute path of the modified.jpg file: file:///storage/sdcard0/Android/data/com.lukaduka.pos/cache/modified.jpg Not very useful since I want to get the absolute file of the image so that I can refer to it later without having to go through the same process again. So the toNativeURL() approach works but only halfway. > window.resolveLocalFileSystemURL weirdness > ------------------------------------------ > > Key: CB-6300 > URL: https://issues.apache.org/jira/browse/CB-6300 > Project: Apache Cordova > Issue Type: Bug > Components: Android, CordovaJS, Plugin File > Affects Versions: 3.3.0 > Environment: file plugin 1.0.1 > Reporter: nii amon dsane > Assignee: Ian Clelland > Labels: camera, file, newbie, plugin, resolveLocalFileSystemURL > > I am trying to use the window.resolveLocalFileSystemURL but for some reason > my failure callback is always triggered. The success callback is never > triggered. This is my code: > {code} > // Take a picture using the camera > $scope.takePicture = function () { > var options = { > quality: 100, > targetWidth: 500, > targetHeight: 500, > destinationType: Camera.DestinationType.FILE_URI, > encodingType: Camera.EncodingType.JPEG, > saveToPhotoAlbum: true, > correctOrientation: true, > sourceType: Camera.PictureSourceType.CAMERA, > allowEdit: true > }; > navigator.camera.getPicture( > cameraSuccess, > cameraFailure, > options > ); > return false; > }; > // what to do when the camera has successfully yielded a good image > function cameraSuccess(imageURI){ > var uri = 'cdv' + imageURI; > alert('this is imageURI: ' + imageURI); > window.resolveLocalFileSystemURL(imageURI, resolvePhotoPath, fail); > }; > {code} > When I print out the imageURI, I get something like this: > file:///storage/sdcard0/DCIM/Camera/1395126124474.jpg > I can confirm that when I look at that path using the Files application on > an android, the file is indeed there. But when the code runs and it > executes the window.resolveLocalFileSystemURL, the fail callback is always > triggered with an error of \{"code":5}. > I've seen that that means there's an ENCODING_ERR but a bit baffled as to > what is causing that. The file does save properly to that location so I am at > a loss at to why the code will fail. > Any help here? -- This message was sent by Atlassian JIRA (v6.2#6252)