当前位置:首页>威尼斯人网上赌场>手持终端新闻

uni-app怎样解决RFID手持机激光扫码问题

2022-06-23

扫码方案

睿丰厚德坚果手持机终端本身自带扫描插件可以把扫描的一维码,二维码输出到焦点编辑框或者焦点输入框中,并附加回车事件(Enter)作为结束符,所以开发者无论用UNI-app还是其他工具进行开发,都可以通过监听回车事件进行操作判断。

摄像头

摄像头扫码兼容性最高,也是一种软解的解决方案,理论上只要带有光学摄像头的终端设备都可以实现解码过程,但是其解码过程很依赖终端性能,有些低端设备搭载的摄像头在对焦上需要花费更多的时候,这对一些高度依赖效率的工作内容产生一定的阻碍,比如大批量的工单扫码。

因此,使用摄像头扫码方案也是可以达到可以使用的层级,如果需要应付一些追求效率的内容就显得相对困难。

uni-app 内如何使用

uni.scanCode({

  //成功回调

  success: function (res) {

    //条码类型

    console.log(res.scanType);

    //条码的值

    console.log(res.result);

  },

  //失败回调

  fail: function (res) {},

  //完成回调

  complete: function (res) {},

});复制代码

激光

这是硬解的方案,扫码的速度远高于需要唤醒过程的摄像头扫码方式,激光扫码几乎可以实时返回结果。不过其依赖Android 8以上的版本才可以通过广播的方式被应用监听,因此在开发的过程中会造成一些阻碍。无论是原生的Android开发方式,还是像uni-app的跨平台解决方案,都需要在激光扫描模块获取到结果后向系统发出一条广播,接着可以通过应用监听广播的方式来获取扫码结果。

uni-app 内如何使用

在一些设备上,需要手动设置广播:

设置 -> 扫描 -> Default -> 关闭1复制代码

在另一些设备上,系统是没有广播设置的,不过一般厂家都会带上自己的硬解扫码工具供用户配置,具体的细节可以咨询对应的厂家。

然后,我们需要确定 2 个变量的值:
广播动作广播标签,你可以简单的将这两个变量理解为key-value,这两者都可以在设备上进行自定义设置,如果没有设置项,需要向厂家了解。

创建一个激光扫码的组件,我们在这里是project_root/components/scan/scan.vue,并写入以下代码:

 

复制代码

处理完组件后,在需要使用激光扫码的页面中引入该组件进行使用,在这里我以index.vue页面为例:

 

复制代码

到这里,在应用里跳转到打开index.vue页面后,直接按激光扫码的按键就能够取得结果,再针对自己的操作逻辑,在回调中补充自己的逻辑代码即可。

重要!通过软件调用激光

在之前,我无法使用软件的方式调用激光扫描模块,只能使用物理键来打开扫描头,现在已经有了解决方案。

uni-app 主动唤醒激光

同样以index.vue页面为例(这里我出于方便用单页面举例,把所有的扫描相关方法写在一起)。

 

复制代码


在线咨询

威尼斯人网上赌场

24小时免费咨询

请输入您的联系电话,座机请加区号

威尼斯人网上赌场
威尼斯人网上赌场

澳门威尼斯人网上赌场

微信联系
返回顶部