Major barKoder Web SDK Update
Introducing barKoder Web SDK 1.3.3
In a succession of 3 minor releases, the barKoder barcode scanning library for Web has been immensely improved. We'd like to thank all of our clients who helped us identify the potential areas of improvement as well as to test the new versions into production environments. In the list that follows, we'll touch base on the most important updates for all three minor versions released post 1.3.0:
- Fixed a previously unknown memory leak. This results in much improved performance, especially on iOS as it was the most affected platform;
- Added Flash support on iOS;
- Added handling for turning off the scanner when page is left (e.g. user switched to another app, another tab, etc.) - Back Triple Camera is selected as default if on iPhone with 20cm minimum focus distance cameras (14 Pro, 15 Pro, etc.) as this camera has shown to be best. On other iPhones with lower minimum focus distance (e.g. 12cm), Back Camera will remain to be used, as this camera is best in such cases;
- Zoom is adjusted on iOS for Back Triple Camera and Back Dual Wide Camera. For those cameras it also has only two zoom levels - default (x1) and maximum (x2), as opposed to the three zoom levels available on the other cameras (x1, x2 and x4);
- Increased the default DPS Limit from 2 to 28. Now there will be more frames scanned per second, and this results in much improved performance on capable devices. This also might be noticeably taxing on lower end devices (consider adjusting the setting accordingly);
- Added Rigorous mode in Decoding Speed. This mode is very demanding and should only be used when scanning from images, not when scanning from camera;
Adjusted location draw duration when not in continuous scanning;
Updated scanImage to scale down images larger than 3000x3000px;
Optimized scanFromLocalFileSystem;
Added "NoEnabledSymbologies" error type in result.error.name when scanning images with no enabled symbologies;
Added getDatamatrixDpmModeEnabled API method;
Added getActiveCamera API method;
Proper handling of errors when user chooses (or has chosen) to not allow camera access (check result.error.name for NotAllowedError);
The Promise from a getCameras() call can be rejected with CameraAccessNotAllowed and CameraAccessNotSupportedOverHttp errors;
Proper handling of camera usage (camera use indicator icon will no longer show after the scanning session has ended);
Added new events under Barkoder object:
- "startScanner", fires after a startScanner() call, when the first frame from the camera is received;
- "stopScanner", fires after a stopScanner() call, when the camera is stopped and the camera preview is removed;
- "scannerTimeout", fires after a startScanner() call, when the scanner timeout runs out, if the scanning session is not closed by other means (i.e. successfully scanning a barcode in non-continuous mode, calling stopScanner(), etc.), and there is a non-zero timeout value (set via setScannerTimeout method);
Various major and minor bug fixes.
The new barKoder Web version can be obtained both via the barKoder NPM Repository and via our Developer Portal.