2017-01-06 4 views
1

Ich verwende Ion-Galerie-Direktive und zeige Bilder in ion-gallery mit Bild-URL. Wie kann ich das gleiche Bild herunterladen?Wie lade ich ein Bild von Ionic Bildergalerie herunter?

Jede Hilfe wäre willkommen.

+0

Haben Sie die Antwort überprüft? –

+0

Haben Sie die Berechtigung für Android Marshmallow oder höher hinzugefügt? –

+0

Sie haben immer noch einen Fehler nach MediaScannerPlugin –

Antwort

2

Ich denke, dass Sie ng-cordova File Transfer Plugin von here verwenden möchten.

In diesem Plugin müssen Sie Option zum Herunterladen von Datei und speichern Sie in Ihrer SD-Karte.

Source Code Beispiel:

  $scope.downloadFile = function() { 
       //URL CONTAINTS IMAGE PATH 
       var url = "http://your_ip_address/images/my.jpg"; 
       var filename = url.split("/").pop(); 
       alert(filename); 
       var targetPath = cordova.file.externalRootDirectory + filename; 
       var trustHosts = true 
       var options = {}; 
       alert(cordova.file.externalRootDirectory); 
       $cordovaFileTransfer.download(url, targetPath, options, trustHosts) 
       .then(function(result) { 
        // Success! 
        alert(JSON.stringify(result)); 
       }, function(error) { 
        // Error 
        alert(JSON.stringify(error)); 
       }, function (progress) { 
        $timeout(function() { 
        $scope.downloadProgress = (progress.loaded/progress.total) * 100; 
        }) 
       }); 
      } 

Noch Wenn Sie mit Problem dann Grund für Bilder nicht in der Galerie zu zeigen ist, dass die Android Medien aktualisiert werden muss nach dem Download oder die Schaffung von Ordnern zu tun . Ich habe das gleiche Problem, aber ich denke, ich habe eine Lösung here gefunden.

Dies ist ein Plugin, das Cordova Media-Scanner erlaubt nur aufrufen, indem Sie:

window.MediaScannerPlugin(successCallback, failureCallback) 

, um weitere Hilfe zu here schauen Sie bitte, here & here.

Hoffe, das wird dir helfen !!

+0

ja, das habe ich schon gemacht, das einzige Problem mit diesem ist, dass nach dem Download durch cordova Datei-Transfer-Plugin, es nicht in der Galerie angezeigt wird. Ich muss manuell zum angegebenen Pfad gehen, um das Bild zu finden. –

+0

überprüfen Sie bitte die Antwort, ich habe es aktualisiert Lass es mich wissen, wenn es für Sie funktioniert! –

+0

Ja, ich habe den obigen Code hinzugefügt, aber das Problem ist, dass Cordova-Dateiübertragung für Android funktioniert, aber nur für niedrigere Version als Marshmallow. So erhalten Sie Berechtigungen vom Benutzergerät für Android Marshmallow oder höher. –

Verwandte Themen