Сканер Ionic 3 Native Qrcode не работает в PWA - PullRequest
0 голосов
/ 03 декабря 2018

Я пытаюсь разработать приложение Ionic Progressive Web App (PWA), которое сканирует QR-код с помощью плагина Ionic Native Qrcode Scanner: https://ionicframework.com/docs/native/qr-scanner/. В браузере на мобильном телефоне, когда начинается сканирование qr-кода,это занимает некоторое время, но через некоторое время возвращает ошибку на консоли:

core.js:1449 ERROR RangeError: Failed to execute 'getImageData' on 'CanvasRenderingContext2D': Out of memory at ImageData creation
  at getCurrentImageData (plugin.min.js:571)
  at thisScanCycle (plugin.min.js:693)
  at t.invokeTask (polyfills.js:3)
  at Object.onInvokeTask (core.js:4751)
  at t.invokeTask (polyfills.js:3)
  at r.runTask (polyfills.js:3)
  at e.invokeTask (polyfills.js:3)
  at i.isUsingGlobalCallback.invoke (polyfills.js:3)
  at n (polyfills.js:3)

Далее следует другая ошибка:

Uncaught Error: This source format is not supported in your environment, you need to pass an image buffer with width and height

Тот же код запускается в браузере реального компьютера (в моем случае MacBook Pro) работает и работает как приложение Android на том же телефоне, где произошел сбой в браузере.Еще одна странная вещь заключается в том, что для сканирования QR-кода вам потребуется большое расстояние (40 см) вместо нескольких см с помощью приложения для Android.Я предполагаю, что камера инициализируется двумя различными способами и в мобильном браузере, который возвращает слишком большое изображение и вызывает ошибку памяти.

Здесь можно найти код Barebone: https://github.com/mottolini/ionic-pwa-qr

...