2016-02-05 9 views
6

का उपयोग कर डिवाइस के डाउनलोड फ़ोल्डर में एक फ़ाइल डाउनलोड करें I url से डिवाइस पर फ़ाइल डाउनलोड करने के लिए कॉर्डोवा फ़ाइल ट्रांस्फर ऑब्जेक्ट का उपयोग कर रहा हूं।कॉर्डोवा फ़ाइल ट्रांस्फर

var fileTransfer = new FileTransfer(); 
var path = cordova.file.dataDirectory; 
fileTransfer.download(
     fileUrl, 
     path + "/sample.pdf", 
     function(theFile) { 
      console.log("download complete: " + theFile.toURI()); 
      alert("File downloaded to "+cordova.file.dataDirectory); 
     }, 
     function(error) {    
      console.log(JSON.stringify(error)); 
     } 
    ); 

इस मामले में फ़ाइल data/data/com.fileDemo/files/ को डाउनलोड किया जाता है (मुझे यकीन है कि डाउनलोड सफलता मैं इस फ़ोल्डर को एक्सेस नहीं कर सकते। download complete: file:///data/data/com.fileDemo/files/sample.pdf के रूप में सफलता संदेश हो रही है कि क्या नहीं कर रहा हूँ)। एंड्रॉइड डिवाइस के "डाउनलोड" फ़ोल्डर में फ़ाइल डाउनलोड करने के लिए मैं उसी विधि का उपयोग कैसे कर सकता हूं?

उत्तर

4

Cordova में, FileTransfer के साथ, आप TEMPORARY या PERSISTENT फाइल सिस्टम का अनुरोध कर सकते

window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, gotFS, fail); 
window.requestFileSystem(LocalFileSystem.TEMPORARY, 0, gotFS, fail); 
  • आईओएस
    • PERSISTENT दस्तावेज़ निर्देशिका वापस आ जाएगी,
    • TEMPORARY कैश वापस आ जाएगी निर्देशिका
  • एंड्रॉयड
    • PERSISTENT इच्छा एसडी कार्ड/फोन मेमोरी
    • TEMPORARY की जड़ देता है डेटा फ़ोल्डर के अंदर एक फ़ोल्डर वापस आ जाएगी।

अधिक जानकारी के लिए देखें File API & FileTransfer

+4

मैंने अभी यह कोशिश की, लेकिन gotFs एप्लिकेशन के डेटा फ़ोल्डर को इंगित करता है। जड़ के नीचे डाउनलोड फ़ोल्डर नहीं है। क्या रूट निर्देशिका के तहत डाउनलोड फ़ोल्डर तक पहुंच बनाना संभव है? –

+1

उन लोगों के लिए जो अभी भी इस समस्या को फंस चुके हैं, या तो 'cordova.file.externalRootDirectory +' डाउनलोड/''या' fileSystem.root.toURL() +' डाउनलोड/'' काम करना चाहिए – REI

संबंधित मुद्दे