Функция Apache Cordova `resolLocalFileSystemURL` всегда возвращает ошибку 5 (ENCODING_ERR) - PullRequest
0 голосов
/ 19 июня 2019

Я занимаюсь этим вопросом уже несколько дней и безрезультатно.Я хочу иметь функцию, которая возвращает размер файла, но resolveLocalFileSystemURL возвращает ошибку 5 (ENCODING_ERR)

function getFileSize (fileUri, callback) {
  var fileSize = null
  window.resolveLocalFileSystemURL(fileUri, function (fileEntry) {
    fileEntry.file(function (fileObj) {
      fileSize = fileObj.size
      callback(fileSize)
    },
    function (err) {
      console.error('fileEntry error:\n', JSON.stringify(err))
      callback(fileSize, Error(err))
    })
  },
  function (err) {
    console.error('resolveLocalFileSystemURL error:\n', JSON.stringify(err))
    callback(fileSize, Error(err))
  })
}

Я использую в качестве ввода что-то вроде fileUri = 'file:///storage/9C33-6BBD/DCIM/Camera/20190616_183142.jpg'

Есть идеи, в чем может быть проблема?Любой хороший простой плагин, чтобы получить размер файла?

specs

Я использую Cordova v 9.0.0 (cordova-lib@9.0.1).Мои плагины это:

<plugin name="cordova-plugin-statusbar" spec="~2.2.3" />
<plugin name="cordova-plugin-camera-with-exif" spec="~1.2.2" />
<plugin name="cordova-plugin-file" spec="~4.3.3" />
<plugin name="cordova-plugin-network-information" spec="~2.0.1" />
<plugin name="cordova-plugin-geolocation" spec="~2.4.3" />
<plugin name="cordova-plugin-email-composer" spec="~0.8.15" />
<plugin name="cordova-plugin-whitelist" spec="^1.3.2" />
<plugin name="cordova-plugin-device" spec="^2.0.2" />
<plugin name="cordova-plugin-inappbrowser" spec="^3.0.0" />
<plugin name="cordova-pdf-generator" spec="^2.0.3" />
<plugin name="info.protonet.imageresizer" spec="https://github.com/protonet/cordova-plugin-image-resizer.git" />
<engine name="android" spec="^6.2.0" />
...