Ошибка при декодировании QR-кода из галереи в IONIC - PullRequest
0 голосов
/ 12 марта 2019

Мне нужно декодировать QR-изображение из галереи в ионном.Я использую следующий код, чтобы получить изображение из галереи и декодировать его,

    gallery() { 

    let options = {
        destinationType: this.camera.DestinationType.FILE_URI,
        sourceType: this.camera.PictureSourceType.PHOTOLIBRARY,
      };


      this.camera.getPicture(options).then((imageData) => {

        this.base64String = imageData;
        this.decodeImg((response) => {
          console.log("response:", response);
          if (response && response != "error in decoding QR Code" && response != "error decoding QR Code") {
            console.log(“Decoded Data ”, response);
          }
          else {
             console.log(“Error”);
          }
        });

      }, (err) => {
        console.log(“Error”, err);
      });
} 

    decodeImg(callback) {
    this.decodeImageFromBase64( this.base64String, (decodedInformation) => {
    console.log("Final Output  ", decodedInformation); 
    callback(decodedInformation);
  });

}


    decodeImageFromBase64(data, callback) {
    try {
      // set callback
      qrcode.callback = callback;
      // Start decoding
      qrcode.decode(data);

      } catch (error) {
      console.log("error  ", error); 
    }
    }

Проблема в том, что некоторые QR-коды декодируются должным образом, а для некоторых QR-сообщений я получаю «ошибку при декодировании QR-кода».Но тот же QR отлично работает в онлайн-декодере.Пожалуйста, дайте мне знать, решение, почему некоторые QR не декодируют должным образом.

Иначе, как альтернативный способ декодировать QR-изображения из галереи в ионном.

...