This demonstration will show the ability to access Datalogic scanner from the soft button in the browser.
This demo is using the GSW Datalogic Scanner plugin.
var GSW = GSW || {};
GSW.Tests = GSW.Tests || {};
GSW.Tests.onGswScannerReady = function() {
// Cordova is now initialized. Have fun!
console.log('Running cordova-' + cordova.platformId + '@' + cordova.version);
navigator.gswdatalogicscanner.initialize(function(data) {
console.log('initialize OK');
document.getElementById('scan_now').addEventListener("touchstart", GSW.Tests.scanPressed);
document.getElementById('scan_now').addEventListener("touchend", GSW.Tests.scanReleased);
document.getElementById('scan_now').addEventListener("touchmove", GSW.Tests.scanReleased);
document.getElementById('scan_now').addEventListener("touchcancel", GSW.Tests.scanReleased);
GSW.Tests.disable();
}, function(error) {
if (error == "Datalogic scanner decode service is unavailable on this device") {
let notice = document.getElementById("noticeContainer");
notice.style.display = "block";
document.getElementById("error").innerHTML = "This device was not manufactured by Datalogic and is not compatible with this demo."
} else console.log('Initialize error occured: ' + error);
});
}
GSW.Tests.scanPressed = function() {
console.log("scanPressed");
navigator.gswdatalogicscanner.enableTrigger(function(result) {
navigator.gswdatalogicscanner.softwareTriggerStart(function(result) {
document.getElementById('userid').value = result.data;
document.getElementById('timestamp').value = result.timestamp;
document.getElementById('code_type').value = result.code_type;
console.log('Software scanned: ' + result.data + ', character_set: ' + result.character_set + ', code_id: ' + result.code_id + ', aim_id: ' + result.aim_id + ', timestamp: ' + result.timestamp);
}, function(error) {
console.log('Error occured: ' + error);
});
}, function(error) {
console.log('Unable to enable trigger: ' + error);
})
}
GSW.Tests.scanReleased = function() {
console.log("scanReleased");
navigator.gswdatalogicscanner.disableTrigger(function(result) {
navigator.gswdatalogicscanner.softwareTriggerStop();
}, function(error) {
console.log('Unable to disable trigger: ' + error);
})
}
GSW.Tests.disable = function() {
navigator.gswdatalogicscanner.disableTrigger(function(result) {
console.log('Trigger disabled');
}, function(error) {
console.log('Unable to disable trigger: ' + error);
})
}
document.addEventListener('gswscannerready', GSW.Tests.onGswScannerReady, false);