# cordova-plugin-honeywell-scanner
**Repository Path**: nieliu123/cordova-plugin-honeywell-scanner
## Basic Information
- **Project Name**: cordova-plugin-honeywell-scanner
- **Description**: cordova honeywell 扫描器 Plugin
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 1
- **Created**: 2021-07-02
- **Last Updated**: 2021-07-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
> cordova-honeywell-scanner plugin: https://gitee.com/xfworld/cordova-plugin-honeywell-scanner
> Cordova plugin for honeywell barcode reader using [AidcSDK](http://download.salamandre.tm.fr/api/com/honeywell/aidc/package-summary.html)
## 目前主要支持版本
SDK 来源于 honeywell 官方团队
- Honeywell ScanPal EDA50 - Android 4.4 and 7
- Honeywell CT60 - Android 8.1.0
- Honeywell CT50 Android 6.0.1
- Honeywell EDA51 Android 8.1.0
## Supported Platforms
- Android
## Installation
### With cordova
```bash
cordova plugin add https://gitee.com/xfworld/cordova-plugin-honeywell-scanner.git
```
### With ionic
```
ionic cordova plugin add https://gitee.com/xfworld/cordova-plugin-honeywell-scanner.git
```
## Usage
最简单的用法如下:
### Enable listener
```js
window.plugins.honeywell.nativeListen(
data => {
console.info("Scanned: " + data);
},
error => {
console.error("Error occured: " + error);
}
);
```
### Disable listener
```js
window.plugins.honeywell.release();
```
### enable readings from within your application
js function define
```js
scanPressed () {
this.window.plugins.honeywell.softwareTriggerStart(function(data) {
console.log('Software scan: ' + data);
}, function(error) {
console.log('Error occured: ' + error);
});
}
scanReleased () {
this.window.plugins.honeywell.softwareTriggerStop();
}
```
and html invoker
```html
```
This module instantiate the aidc manager during the init phase of the plugin
### listConnectedBarcodeDevices
Return the connected barcode devices
```js
// Return an array of devices ex: (name: 'Internal Scanner', id: 'dcs.scanner.imager')
window.plugins.honeywell.listConnectedBarcodeDevices((result) => {
result.devices.forEach((device) => console.log(`name: ${device.name}, id: ${device.id}`));
}, (err) => console.error(err));
```
### selectDevice
Select a specific barcode reader device (`deviceName`: string returned by the listConnectedBarcodeDevices `id` key (optional)).
If no deviceName is specified the plugin will select the device returned by the createBarcodeReader instance
```js
// Select default device
window.plugins.honeywell.selectDevice(null, () => {
console.info('default codebar device connected');
}, (err) => console.info(err));
// Select specific device returned by the id key of listConnectedBarcodeDevices function
window.plugins.honeywell.selectDevice('dcs.scanner.imager', () => {
console.info('dcs.scanner.imager codebar device connected');
}, (err) => console.info(err));
```
### claim
Claim the access of the device
For optimization, please call this function during apps resume event
```js
window.plugins.honeywell.claim(() => console.info('claim success'), (err) => console.info(err));
```
### release
Release the current connected device if exist.
For optimization, please call this function during apps pause event
```js
window.plugins.honeywell.release(() => console.info('release success'), (err) => console.info(err));
```
### register
Bind the device callback event. Each call of the register function will remove the old callback
```js
window.plugins.honeywell.register((event) => {
if (event.success) console.info(`new data from barcode device : ${event.data}`);
else console.info('scan triggered but no data');
}, (err) => console.info(err));
```
### unregister
Unbind the current callback function returned by register function
```js
window.plugins.honeywell.unregister(() => console.info('unregister done'));
```
### enableTrigger
Enable the trigger button. The trigger button is enable by default
```js
window.plugins.honeywell.enableTrigger(() => console.info('trigger enabled'));
```
### disableTrigger
Disable the trigger button.
```js
window.plugins.honeywell.disableTrigger(() => console.info('trigger disabled'));
```