2013-04-02 1 views
1

Я озадачен тем, почему это не работает. Мой код ниже. Я делаю вызов FileTranser.download(), который никогда не достигает функций успеха или сбоя. Я вижу прогресс console.logs, и он даже достигает 1. Я также могу видеть сообщения отладки, говорящие, что файл был успешно перенесен из класса CDVDelegate. В моем iPad Simulator я даже вижу, что файл создан. Я просто не могу заставить обработчик успеха запускать.PhoneGap 2.5 FileTransfer.download обратные вызовы не срабатывают

Я только смог найти упоминание об этом как о проблеме в PhoneGap 1.8. Является ли это еще одной проблемой, или я держу ее неправильно?

Спасибо

var fileName ='my-file.pdf'; 
var ft = new FileTransfer(); 
var docPath = localStorage.getItem(CONSTANTS_LOCALSTORAGE_LOCAL_FILE_PATH); 
var encodeduri = encodeURI(CONSTANTS_WEBAPI + 'Documents/GetDocument?DocFilename=' +fileName + '&DocumentType=' + documentType); 
console.log(encodeduri); 

ft.onprogress = function(progressEvent) { 
if (progressEvent.lengthComputable) { 
    console.log('download progress: '+(progressEvent.loaded/progressEvent.total)); 
} }; 

ft.download(
    encodeduri, 
    docPath+"/"+fileName, 
    function(entry){ 
    //------ Never reaches this 
    console.log('download ok: '+entry.fullPath 
    onSuccessCallback(entry); 
    }, 
    function(error) { 
     //-------or this 
     alert("download error source " + error.source); 
     alert("download error target " + error.target); 
     alert("upload error code" + error.code); 
     onFailCallback(error); 
    }, 
    false); 

ответ

0

В случае, если кто имеет эту проблему, я установил его, удалив приложение из устройства и обновления проекта Xcode.

+0

Что значит «обновление проекта xcode». Я даже не использую xcode в моем проекте cordova, я просто позволяю кордоне называть его всякий раз, когда это необходимо. Есть ли опция «обновить» в xcode или что-то еще? Я попытался удалить приложение с устройства и переименовать (cordova run ios), но это не устранило проблему. – Shawn

+0

Если у вас есть надежное решение для этого, вы должны уведомить ребята из cordova, так как есть открытые проблемы, касающиеся этого: https://issues.apache.org/jira/browse/CB-6905, https: // issues. apache.org/jira/browse/CB-6525 – Shawn