2016-03-26 14 views
0

Cordova Dosya Transferi ile bir sorun yaşıyorum. Bir dosyayı indirmek istiyorsanız, her şey yolunda gidiyor, iyi çalışıyor, Başarımı var, ama hiç bir dosya da indirilen. Tüm günü, neler olduğunu anlamaya çalışarak geçirdim, belki bana yardım edebilir misin?Cordova Dosya Transferi (+ ngcordova): 'başarı' indirme ama Android'deki dosyaları indiremiyor (belki iOS üzerinde)

JS: Burada

benim kodudur

... 
$scope.downloadFile = function() { 

    // File for download 
    var url = "http://www.digitallanding.com/wp-content/uploads/2012/12/download-speed-test-630.jpg"; 

    // Save location 
    var targetPath = cordova.file.externalDataDirectory + "TestFile.jpg"; 

    // Trust every host certificate SSL 
    var trustHosts = true; 

    // Options to send 
    var options = {}; 

    console.log(cordova.file.externalDataDirectory); 
    $cordovaFileTransfer.download(url, targetPath, options, trustHosts) 
     .then(function (result) { 
      console.log(result); 
     }, function (error) { 
      console.error(error); 
     }, function (progress) { 
      // After 
      }) 
     }); 
} 
... 

HTML:

Success log: Burada

... 
<ion-list> 
     <ion-item ng-click="downloadFile()"> 
      <h2 class="icon ion-document"> Test download</h2> 
     </ion-item> 
</ion-list> 
... 

Benim başarım günlüğü olduğu

  • Beyaz liste eklentisi yüklü, (CSP) ile yapılandırılmış ve başlatıldı (v1.2.1)
  • Dosya eklentisi yüklü (+ ngcordova lib) ve başlatıldı (v4.1.1): Burada ben ne var
  • Dosya Aktarım eklentisi yüklü (+ ngcordova lib) ve başlatıldı (v1.5.0)
  • Cordova Android Hatmi
0 ile 6.0.0
  • HTC One M8 Ben belki benim telefonun sağ hiçbir sonucun bir hata olduğunu düşündüm çünkü

    <preference name="AndroidPersistentFileLocation" value="Compatibility" /> 
        <preference name="AndroidExtraFilesystems" value="sdcard,cache" /> 
    

    :

    ben eklemek config.xml çalıştı.

    <allow-navigation href="*" /> 
        <allow-intent href="*" /> 
        <access origin="*" /> 
    

    beyaz liste şey engellemediğini izin vermek için, ama çok değişmez:

    Ben de ekledi.

    Bu başarı/hata konusunda yardımcı olmanızı gerçekten takdir ediyorum.

    sayesinde

    Pierre

  • +0

    yardımcı olur. Bu Açısal, bu yüzden bu konuda yardım için iyonik foruma göndermelisiniz. – JesseMonroy650

    cevap

    0

    Cordova dosya eklentisi (v 4.1.1) Android Marshmallow ile izin sorunu var. Bu sorun, android dosya sisteminde klasörlerin oluşturulmasına izin vermeyecektir. Bu sorun şimdi düzeltildi. Bu işi yapmak için dosya eklentisi github içinde android src klasöründen en son FileUtils.java çekmek zorunda kalabilirsiniz. Umarım, javascript'iniz standart olarak

    +0

    Dosya indirme klasörüne nasıl aktarılır. android indirme klasörü için göremiyorum cordova seçeneği yok çünkü. Dosya uygulama klasörüne indiriliyor. Baska öneri. – Ironic

    +0

    @CalculatingMachine Bu çalışma örneğini kontrol etmenizi öneririz - https://github.com/gandhirajan/Cordova_File_Operations dosyayı sunucudan indirip sdcard klasörüne yazar. Dosyaları indirme klasöründe saklamak için de genişletebilirsiniz. – Gandhi

    +0

    İndirme klasörünü nasıl genişletebiliriz. Lütfen bu soruya bir göz atın. http://stackoverflow.com/questions/41152137/cordova-file-download-to-android-download-folder Umarım bir şey önerebilirsiniz. – Ironic

    İlgili konular