Я хотел бы запустить изображение на моем Android-устройстве через SwiftDecoder от Honeywell. Для Honeywell SDK требуется «необработанные данные о пикселях изображения в градациях серого 8bpp» как byteArray. Я перепробовал все возможное. Однако всегда возвращайте пустой список результатов, и в консоли отладки выдается следующее сообщение об ошибке:
"E / HSMLog: поймано исключение в классе: com.honeywell.barcode.DecodeManager
Метод: DecodeImage ()
Сообщение: byte [] смещение = 0 длина = 9000000 src.length = 6420735 "
Я преобразовал jpeg в растровое изображение с форматом растрового изображения ARGB_8888, а затем перенес его в изображение в оттенках серого и преобразовал в bitArray.
```BitmapFactory.Options op = new BitmapFactory.Options();
op.inPreferredConfig = Bitmap.Config.ARGB_8888;
picBitmap = (Bitmap) BitmapFactory.decodeFile(Environment.getExternalStorageDirectory().getPath() + "/path/test.jpeg", op);
greyscaleBitmap = toGrayscale(picBitmap);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
picBitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] byteArray = baos.toByteArray();
HSMDecodeResult[] barcodeData = hsmDecoder.decodeImage(byteArray, picBitmap.getWidth(), picBitmap.getHeight());```
Я получаю пустой результат и следующее сообщение об ошибке: «E / HSMLog: Caught Exception in Class: com.honeywell.barcode.DecodeManager
Метод: DecodeImage ()
Сообщение: byte [] смещение = 0 длина = 9000000 src.length = 6420735 "