【问题标题】:cordova filetransfer plugin download doesnt show up in image gallery科尔多瓦文件传输插件下载未显示在图片库中
【发布时间】:2015-08-24 10:41:57
【问题描述】:

我有这段代码可以从 URL 下载图像并保存在我的手机设备中,但问题是它没有显示在手机设备的图片库中,而是显示在文件存储目录中。所以,我想让它出现在图片库中。

$scope.downloadImage = function(images) {
    var imageName = angular.fromJson(images);
    $scope.$applyAsync(function() {
      $scope.indexchosen === undefined ? $scope.indexchosen = 0 : $scope.indexchosen;
      console.log($scope.indexchosen)
      index = $scope.indexchosen;
      imageToDownload = imageName[index].filename; 
    })

    $scope.$applyAsync(function() {
      window.requestFileSystem(window.LocalFileSystem.PERSISTENT, 0, onSuccess, onError);
    });

    function onSuccess(fileSystem) {
      var directoryEntry = fileSystem.root; 
      countImage+=1; 

      var name = countImage + '-' + imageToDownload.split('/').pop();
      var imageUrl = encodeURI(decodeURIComponent(AppSettings.baseApiUrl + imageToDownload));
      var fp = fileSystem.root.toURL();

      var filepath = fp + '/' + name;
      console.log(filepath)
      var ft = new window.FileTransfer();
      var f =  ft.download(imageUrl, filepath,
        function (entry) {
          $cordovaToast.show("Image Saved", "long", "bottom");
        },
        function (error) {
        }
      );
    }
    function onError(error) {
    }
  }

感谢任何帮助。

【问题讨论】:

    标签: android cordova ionic-framework


    【解决方案1】:

    如果下载成功,您应该重新扫描您的设备存储,因为 Cordova 不知道文件是否已下载。

    所以我做了一个插件,

    下载后更新图库的插件。

    https://github.com/pouu69/cordova-plugin-gallery-refresh

    【讨论】:

      【解决方案2】:

      尝试重新启动您的设备,然后检查您的图库

      【讨论】:

      • 我认为告诉我的应用程序的用户每次都重新启动他们的设备以查看他们刚刚下载的图像对我来说不是很有效。
      • 这解释了为什么我的手机意外重启
      猜你喜欢
      • 2017-08-25
      • 2022-07-08
      • 1970-01-01
      • 1970-01-01
      • 2019-04-04
      • 1970-01-01
      • 2016-07-16
      • 1970-01-01
      • 2012-09-21
      相关资源
      最近更新 更多