This plugin defines an emdkBarcode
object which provides an API for interacting with the 2D barcode scanner hardware scanner on Zebra devices.
The EMDK library itself does support other scanner types like 1D and Camera, but this plugin is for the 2D scanner only! Feel free to change / extend it.
The emdkBarcode object is not available until after the deviceready
event.
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
console.log(emdkBarcode);
}
This plugin is based on https://github.com/darryncampbell/EnterpriseBarcodePoC by Darryn Campbell
cordova plugin add https://github.com/DavidTalamona/Cordova-Plugin-BarcodeScanner-EMDK.git
Requires Cordova 5.0 or higher otherwise your application will get build errors.
When updating from a previous Cordova version it is necessary to re-add this plugin
- Android
Boolean which is true
when the EMDK scanner is available on the device.
if (emdkBarcode.available) {
console.log("EMDK is available");
);
Enables the barcode scanner hardware and the associated trigger, so pressing the hardware trigger will initiate a scan.
emdkBarcode.startHardRead(enableSuccess, enableFailure);
emdkBarcode.startHardRead(
function (scannedObj) {
console.log("Scan data: " + scannedObj.data);
console.log("Scan symbology: " + scannedObj.type);
console.log("Scan time: " + scannedObj.timestamp);
},
function (status) {
console.log("Scanner failure: " + status.message);
}
);
Enables the barcode scanner hardware and the associated trigger, it will start scanning immediately without the need of a hardware trigger.
emdkBarcode.startSoftRead(enableSuccess, enableFailure);
emdkBarcode.startSoftRead(
function (scannedObj) {
console.log("Scan data: " + scannedObj.data);
console.log("Scan symbology: " + scannedObj.type);
console.log("Scan time: " + scannedObj.timestamp);
},
function (status) {
console.log("Scanner failure: " + status.message);
}
);
Stops the currently active scan.
emdkBarcode.stopReading();