[
https://issues.apache.org/jira/browse/CB-6243?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13939515#comment-13939515
]
Ian Clelland commented on CB-6243:
----------------------------------
Odd. Are you still resolving the same URL as in the description?
Have you added any preferences to your config.xml for the file plugin? (I
haven't, and this code is working for me)
This is my console output (filename changed slightly from yours to pick an
image on my device):
{code}
window.resolveLocalFileSystemURL('file:///storage/emulated/0/DCIM/Camera/1386780126389.jpg',
function(entry) {
console.log(entry.fullPath);
console.log(entry.toURL());
console.log(entry.toNativeURL());
}, function(err) { console.log(err); });
undefined
/DCIM/Camera/1386780126389.jpg
cdvfile://localhost/persistent/DCIM/Camera/1386780126389.jpg
file:///storage/emulated/0/DCIM/Camera/1386780126389.jpg
{code}
> FileEntry.toURL() "cdvfile://localhost/persistent/file://"
> ----------------------------------------------------------
>
> Key: CB-6243
> URL: https://issues.apache.org/jira/browse/CB-6243
> Project: Apache Cordova
> Issue Type: Bug
> Components: Plugin File
> Affects Versions: 3.4.0
> Environment: Android 4.4 using Genymotion emulator
> Reporter: David Normington
> Assignee: Ian Clelland
> Labels: android, cdvfile
>
> When I run something like this:
> {code}
> window.resolveLocalFileSystemURL('file:///storage/emulated/0/DCIM/Camera/1394726081689.jpg',
> function(entry) {
> console.log(entry.fullPath);
> console.log(entry.toURL());
> entry.file(fileSuccess, fail);
> });
> {code}
> The logcat shows this result:
> {code}
> I/chromium( 3022): [INFO:CONSOLE(28)]
> "file:///storage/emulated/0/DCIM/Camera/1394726081689.jpg", source:
> file:///android_asset/www/js/pdf.js (28)
> I/chromium( 3022): [INFO:CONSOLE(29)]
> "cdvfile://localhost/temporary/file://storage/emulated/0/DCIM/Camera/1394726081689.jpg",
> source: file:///android_asset/www/js/pdf.js (29)
> W/System.err( 2928): java.io.FileNotFoundException: File:
> cdvfile://localhost/persistent/file://storage/emulated/0/DCIM/Camera/1394726081689.jpg
> does not exist.
> W/System.err( 2928): at
> org.apache.cordova.file.FileUtils.getFileMetadata(FileUtils.java:953)
> W/System.err( 2928): at
> org.apache.cordova.file.FileUtils.access$400(FileUtils.java:53)
> W/System.err( 2928): at
> org.apache.cordova.file.FileUtils$14.run(FileUtils.java:220)
> W/System.err( 2928): at
> org.apache.cordova.file.FileUtils$23.run(FileUtils.java:325)
> W/System.err( 2928): at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
> W/System.err( 2928): at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
> W/System.err( 2928): at java.lang.Thread.run(Thread.java:841)
> {code}
> As you can see the second console.log has the cdvfile protocol with the file
> protocol appended to the end. I'm sure this is causing the following error.
> Seems that the same code runs perfectly on iOS returning the correct URLs:
> {code}
> [Log] /cdv_photo_001.jpg
> [Log] cdvfile://localhost/temporary/cdv_photo_001.jpg
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)