dxBarcode
1. 概述
此模块是 dejaOS 官方系统模块库的一部分,用于条形码扫描和解码功能。 它包含全面的条形码扫描功能:
- 初始化/反初始化条形码扫描器
- 实时条形码检测和解码
- 支持各种条形码格式(QR、Code128、Code39 等)
- 事件驱动的回调系统
- 系统级条形码扫描的单例模式
2. 文件
- dxBarcode.js
- libvbar-m-dxbarcode.so
- 确保这 2 个文件包含在您项目根目录下的 dxmodules 子目录中
3. 依赖项
- dxLogger
4. 兼容设备
兼容所有运行 dejaOS v2.0+ 的设备。设备必须具有扫描摄像头。
5. 使用方法
基本用法
import dxbarcode from "./dxmodules/dxBarcode.js";
// 初始化条形码扫描器
dxbarcode.init();
// 设置条形码检测回调
dxbarcode.setCallbacks({
onBarcodeDetected: function (data, type, quality, timestamp) {
// data 是包含条形码数据的 ArrayBuffer
let str = common.utf8HexToStr(common.arrayBufferToHexString(data));
log.info("条形码数据 :", str);
log.info("条形码类型:", type);
log.info("质量:", quality);
log.info("时间戳:", timestamp);
},
});
// 开始处理条形码事件(定期调用)
setInterval(() => {
dxbarcode.loop();
}, 50); // 每 50ms 处理一次事件
6. API 参考
dxbarcode.init()
初始化条形码扫描器。必须在任何其他操作之前调用。
返回值: void
dxbarcode.deinit()
反初始化条形码扫描器并释放资源。
返回值: void