恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

uni-app PDA 扫码一次为什么会执行两次?大概率不是扫码枪坏了

  • 首页
  • 资讯中心
  • /
  • uni-app PDA 扫码一次为什么会执行两次?大概率不是扫码枪坏了

相关资讯

嵌入式知识 2026/8/22 10:57:48
多模型分散调用效率瓶颈?聊聊大模型聚合平台的技术解决方案 2026/8/22 10:57:48
MaaAssistantArknights 明日方舟自动化工具:从一键长草到源码深潜的完整指南 2026/8/22 10:57:48

最新资讯

大数据机器学习:基于Django机器学习算法房源可视化分析推荐系统的设计与实现
前端js练习
题解:洛谷 P2911 [USACO08OCT] Bovine Bones G
Papermerge 安装教程:Docker 部署从零开始,让扫描件支持全文搜索
【VRTK】【VR开发】【Unity】13-攀爬
如何一次搞定所有开源音源:lxmusic-source-all 新手完整指南

今日推荐

markdown-it-vue 踩坑排障:从安装到渲染的 6 个高频问题快速讲清
多尺度智能体控制:从宏观密度场到微观决策的架构与实践
CUBE标准:统一AI智能体评测的度量衡与架构解析

本周热门

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

uni-app PDA 扫码一次为什么会执行两次?大概率不是扫码枪坏了

发布时间:2026/8/22 10:57:48
uni-app PDA 扫码一次为什么会执行两次?大概率不是扫码枪坏了 做 uni-app PDA 项目时有一个非常常见的问题明明只扫了一次商品6901234567890结果系统却执行了两次。例如入库数量原来10扫码一次预期11实际12甚至出现请求接口两次生成两条记录播放两次提示音弹两个 Toast很多人的第一反应是扫码枪是不是发送了两次实际上更多时候问题出在扫码监听被注册了两次。一、最常见原因页面重复注册监听例如页面onShow↓注册扫码监听用户进入页面注册监听 A跳到其他页面再回来onShow 再执行↓又注册监听 B这时候实际上已经存在监听 A监听 B扫码一次以后设备发送一次扫码结果↓监听 A 收到监听 B 也收到↓业务执行两次所以扫码一次触发两次不一定是设备发送了两遍。很可能只是你的 APP 接收了两遍。二、onShow 特别容易踩坑uni-app 页面生命周期里面onShow不是只执行一次。每次页面重新显示都可能再次执行。如果里面直接写registerScanListener()但是没有对应unregisterScanListener()监听数量就可能不断增加。最后甚至会出现第一次扫码 → 1次重新进入页面第二次扫码 → 2次再返回一次第三次扫码 → 3次这种情况非常典型。三、还有一种情况广播扫码和键盘扫码同时开启有些 PDA 支持Broadcast 模式Keyboard 模式甚至可能两个模式同时工作。一次扫码PDA 扫描↓广播发送一次模拟键盘又输入一次如果你的项目同时监听Android Broadcast和Keyboard Input业务层就会收到两个内容完全一样的扫码结果。这种情况尤其容易被误认为插件重复回调。实际上是设备启用了两个输出通道。四、还有一种多个页面同时监听例如首页↓注册扫码事件进入入库页面↓又注册扫码事件但是首页监听并没有释放。这时候扫码首页收到入库页面收到如果两个页面都调用业务接口就会产生重复操作。因此扫码这种全局设备能力最好不要让每个页面随意注册原生监听。五、业务层还需要做一次防重复即使底层监听已经处理正确在企业项目里我仍然建议增加一个简单的防抖机制。比如同一个条码6901234567890在非常短的时间内连续到达0ms → 690123456789050ms → 6901234567890可以根据业务规则判断是否忽略第二次。但要注意不能简单设置“1 秒内所有扫码都忽略”。因为仓库人员可能真的在高速连续扫描不同商品商品 A商品 B商品 C更合理的是结合扫码内容时间当前业务页面业务状态进行判断。六、推荐的结构我现在更建议PDA / 扫码枪↓唯一扫码监听↓ScanBridge↓标准 ScanResult↓当前业务页面而不是页面 A → 注册设备页面 B → 注册设备页面 C → 注册设备这样比较容易统一控制注册注销页面生命周期重复扫码数据来源我们把这部分整理进了SL-ScanBridge用于 uni-app / uni-app x Android 项目中的 PDA 广播、2.4G 扫码枪和模拟键盘扫码统一处理。如果你的项目也出现扫一次执行两次建议第一步不要急着改接口。先打印监听注册次数扫码回调次数扫码来源当前页面时间戳插件地址SL-ScanBridge - DCloud 插件市场通常很快就能找到问题。

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号