2016-03-03 3 views
1

У меня есть ошибка «Невозможно создать растровое изображение», когда я пытаюсь получить одно изображение из галереи в Android. Я видел журнал, и я нашел эту ошибку: /CameraLauncher (16616): Файл locaton is:/storage/emulated/0/WhatsApp/Media/WhatsApp Images/IMG-20160303-WA0002.jpg W/System. err (16616): java.io.FileNotFoundException: Нет такого файла или каталогаnavigator.camera.getPicture из галереи Ошибка «Невозможно создать растровое изображение»

Я считаю, что ошибка генерируется пробелом.

Я usign Cordova кли 6,0, и это мой код:

  var options = { 
       destinationType: Camera.DestinationType.FILE_URI, 
       sourceType: navigator.camera.PictureSourceType.SAVEDPHOTOALBUM, 
       quality: 30, 
       targetWidth: 300, 
       targetHeight: 300 
      }; 

      var q = $q.defer(); 

      navigator.camera.getPicture(function (result) { 
       // Do any magic you need 
       q.resolve(result); 
      }, function (err) { 
       q.reject(err); 
      }, options); 

      return q.promise; 

Как я могу исправить эту ошибку?

Спасибо!

ответ

1

Это старый пост, но я все равно отвечу.

У меня была аналогичная проблема, но для меня произошла ошибка после GetPicture при попытке сохранить фактическое изображение. Как вы подозревали, это место в «WhatsApp Images» вызывает проблему, поэтому я заменяю пространство «% 20». Кодирование URI может быть лучшим вариантом. См. Ссылку на 3-ю строку ниже

$cordovaCamera.getPicture(options).then(function (imageUrl) { 
if (ionic.Platform.isAndroid()) { 
    imageUrl = imageUrl.replace(" ", "%20"); 
    AppFileService.storeWallImage(imageUrl); 
    resolve({ 
    img: imageUrl 
    }); 
}); 
Смежные вопросы