【问题标题】:Uploading jpeg in firebase storage from camera using ngCordova camera plugin使用ngCordova相机插件从相机上传jpeg到firebase存储
【发布时间】:2016-12-06 20:04:30
【问题描述】:

我正在努力将图像从 Ionic 应用中的 ngCordova 相机插件上传到 Firebase 存储中。

我不能使用 fileTransfert 插件,因为没有带有 firebase 存储的数据库 url(除非我错了......)而且我只能存储文件。

您对如何执行此操作有一些想法吗?

这是我目前使用cordova文件在blob中读取和转换的代码:

$scope.fromLibrairy = function() { 
 $ionicPlatform.ready(function() {

  var options = {
    quality: 50,
    destinationType: Camera.DestinationType.FILE_URI,
    sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
    encodingType: Camera.EncodingType.JPEG,
    mediaType: Camera.MediaType.PICTURE,
    targetWidth: 300, 
    targetHeight: 300, 
  };

  $cordovaCamera.getPicture(options).then(function(imageURI) {
    $scope.imgURI = imageURI;

    var name = imageURI.substring(imageURI.lastIndexOf('/')+1, imageURI.length);
    var directory = imageURI.substring(0, imageURI.lastIndexOf('/')+1);

    $cordovaFile.readAsArrayBuffer(directory, name).then(function(success) { 
      alert(success);
      var blob = new Blob([success], { type:"image/jpeg" });

      // Create the storage ref
      var ref = storageRef.child('images/' + name); 
      // My function to upload in firebase storage (it works with jpeg)
      $scope.uploadPhoto(blob, ref);

    }, function (error) {
      alert("erreur du readAsArrayBuffer" + error + error.code);
    })

  }, function(error){
    alert('erreur du getPicture' + error);    
  });

});
};

任何帮助将不胜感激! :)

【问题讨论】:

    标签: cordova ionic-framework firebase cordova-plugins firebase-storage


    【解决方案1】:

    试试这个...

    var name = imageURI.replace(/^.*[\\\/]/, '');
    var directory = cordova.file.tempDirectory;
    

    确保您已安装 $cordovaFile 插件并正确配置了 ng-cordova。

    请包含具体的错误日志信息

    否则这里的完整解决方案是类似的问题 - https://stackoverflow.com/a/38708624/122313

    【讨论】:

      猜你喜欢
      • 2018-06-05
      • 2016-12-03
      • 1970-01-01
      • 2018-03-14
      • 2017-03-26
      • 1970-01-01
      • 2016-03-06
      • 1970-01-01
      • 2017-08-18
      相关资源
      最近更新 更多