pda广播扫码

本文介绍了如何在PDA设备上使用广播功能,解决当需要在不聚焦输入框的情况下进行扫码的问题,通过封装`pdaScanCode.js`和在`main.js`中集成,实现在页面多个输入框间灵活切换扫描操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

pda扫码默认只要光标聚焦到输入框扫描到的值就会自动填充到输入框中。但是有些场景并不适用,例如:同一个页面有多个输入框或者需求要求不聚焦到输入框就能扫描,此时就不符合实际业务场景了。这时,可以用广播扫码来实现,它不需要光标聚焦。

一、查看pda的广播动作和数据标签

每个品牌pda的广播动作和数据标签查看方式不同,我这里是(海康威视)pda,后面代码中需要用到

查看方式:pda自带的app 扫码工具 --- 输出配置 --- 输出模式

二、封装扫描工具类pdaScanCode.js

let main;
let filter;
let receiver;
let tag = false;
/**
 * 开始广播监听扫码
 */
const start = () => {
  main.registerReceiver(receiver, filter);
};

/**
 * 停止广播监听扫码
 */
const stop = () => {
  main.unregisterReceiver(receiver);
};

/**  剩余下个变量已经做了全局变量
 *
 * 定义广播
 * that:传this;
 */
const init = (onReceive) => {
  console.log("--------初始化广播扫码");
  //获取activity
  main = plus.android.runtimeMainActivity();
  const IntentFilter = plus.android.importClass("android.content.IntentFilter");
  filter = new IntentFilter();
  // 扫描设置的广播动作 改成自己pda的广播动作 android.intent.ACTION_SCAN_OUTPUT
  filter.addAction("android.intent.ACTION_SCAN_OUTPUT");
  receiver = plus.android.implements(
    "io.dcloud.feature.internal.reflect.BroadcastReceiver",
    {
      onReceive: (context, intent) => {
        plus.android.importClass(intent);
        // 改成自己pda的数据标签 barcode
        const code = intent.getStringExtra("barcode");
        // 业务
        //防重复
        if (tag) return;
        tag = true;
        setTimeout(() => {
          tag = false;
        }, 150);
        //到这里扫描成功了,可以调用自己的业务逻辑,code就是扫描的结果    return出code进行业务处理
        onReceive && onReceive(code);
      },
    }
  );
};

export const broadcastScan = {
  init,
  start,
  stop,
};

三、在main.js中,将broadcastScan挂在到原型链上

三、使用

onLoad: function(option) {
  //init传入一个回调函数做参数,在扫描的时候会将数据传入这个方法里,然后在处理你的业务逻辑
  this.$broadcastScan.init(this.getScancode);
},
onUnload() {
  this.$broadcastScan.stop();
},
onHide() {
  this.$broadcastScan.stop();
},
onShow() {
  this.$broadcastScan.start();
},
methods: {
  getScancode(code) {
    console.log(code, '------------------pda硬件扫码值');
  }
}

这世界很喧嚣,做你自己就好

### 如何在Ollama平台上部署DeepSeek模型并且只利用CVPU进行操作 #### 选择适合的硬件环境 为了确保能够顺利部署并运行DeepSeek模型,在选择硬件时需考虑计算机视觉处理单元(CVPU)的支持情况。对于想要完全依赖CVPU来完成推理或训练任务的情况,确认所选设备具备足够的计算能力和内存资源至关重要[^1]。 #### 下载与安装Ollama 按照官方指南获取最新版Ollama软件包,并依照指示完成安装流程。这一步骤为后续加载和管理包括DeepSeek在内的各种大型预训练模型奠定了基础[^2]。 #### 获取DeepSeek模型文件 访问指定渠道下载目标版本的DeepSeek模型权重及其他必要组件。注意检查兼容性和完整性以避免潜在错误发生。 #### 修改配置适应CVPU 针对希望专用于CVPU执行的任务场景,调整默认设置使整个工作流尽可能多地调用该类加速器。具体做法可能涉及编辑启动脚本中的参数选项或是通过API接口传递相应指令给框架层面上下文管理者[^3]。 ```bash # 示例命令行参数设定(假设存在这样的功能) ollama run --device cvpu deepseek_model_path ``` #### 测试验证部署成果 最后一步是对新搭建好的平台进行全面的功能性测试,确保各项性能指标达到预期水平的同时也排查任何可能出现的问题点。如果一切正常,则说明已经成功实现了仅依靠CVPU来进行推理工作的目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值