监听pda扫描_uniapp App监听PDA扫描工具数据
uniapp App监听PDA扫描工具数据
1、需求是:App监听东大PDA内置的扫描工具,通过扫描工具扫描条码,把数据自动赋值在input输入框,无需手动设置或者调用uniapp的uni.scanCode({})去赋值
2、调用的代码已经封装成js,直接去复制调用即可,感觉能解决了问题的,动动小指头点个赞~ O(∩_∩)O
附带一张扫描工具样子:
A、页面上的调用如下:
methods:{
getScancode(code){
this.config =code
}
},
onLoad() {
//init传入一个回调函数做参数,在扫描的时候会将数据传入这个方法里,然后在处理你的业务逻辑
broadcastScan.init(this.getScancode);
},
onUnload() {
broadcastScan.stop();
},
onHide() {
broadcastScan.stop();
},
onShow() {
broadcastScan.start();
}
B、创建一个js文件,复制以下代码。
let main;
let filter;
let receiver;
let tag = false;
/**
* 开始广播监听扫码
* that:传this;
*/
const start = () => {
/* #ifdef APP-PLUS */
main.registerReceiver(receiver, filter);
/* #endif */
}
/**
* 停止广播监听扫码
* that:传this;
*/
const stop = () => {
/* #ifdef APP-PLUS */
main.unregisterReceiver(receiver);
/* #endif */
}
/** 剩余下个变量已经做了全局变量
*
* 定义广播
* that:传this;
*/
const init = (onReceive) => {
/* #ifdef APP-PLUS */
//获取activity
main = plus.android.runtimeMainActivity();
const IntentFilter = plus.android.importClass('android.content.IntentFilter');
filter = new IntentFilter();
// 扫描设置的广播名称
filter.addAction("com.android.server.scannerservice.broadcast");
receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', {
onReceive: function(context, intent) {
plus.android.importClass(intent);
// 扫描设置的开发者选项--键值名称 scannerdata
const code = intent.getStringExtra("scannerdata");
// 业务
//防重复
if (tag) return;
tag = true;
setTimeout(function() {
tag = false;
}, 150);
//到这里扫描成功了,可以调用自己的业务逻辑,code就是扫描的结果 return出code进行业务处理
onReceive && onReceive(code);
}
});
/* #endif */
}
export const broadcastScan = {
init,
start,
stop,
};
监听pda扫描_uniapp App监听PDA扫描工具数据相关推荐
- Android App监听软键盘按键的三种方式与改变软键盘右下角确定键样式
Android App监听软键盘按键的三种方式与改变软键盘右下角确定键样式 actionNone : 回车键,按下后光标到下一行 actionGo : Go, actionSearch : 放大镜 a ...
- android监听支付宝支付成功,Andriod监听支付宝收款实现个人支付宝支付接口!附安卓App...
个人微信支付宝免签约支付解决方案 首先呢,我不会开发安卓App,这款APP是我在酷安网看到的,非常简单的一款APP,安装后填写我们的后端接口(用于接收收款通知的)就可以接收收款通知了.所以就算我们没有 ...
- watch深度监听数组_vue watch普通监听和深度监听实例详解(数组和对象)
vue watch普通监听和深度监听实例详解(数组和对象) 下面通过一段代码给大家介绍vue watch的普通监听和深度监听,具体代码如下所示: var vm=new Vue({ data:{ num ...
- Vue 学习——监听器(侦听器):普通监听和深度监听
一.什么是监听器 Vue提供了一个watch选项,提供了一个更通用的方法,来响应数据的变化.当需要在数据变化时执行异步代码或者开销比较大的操作时,这个方式是最有用的. 二.普通监听 普通监听是简单的数 ...
- oracle设置本地服务监听端口号,如何开启监听端口号
数据库监听程序为启动 HOST应该是IP或者主机名 PORT应该是端口号,看你报错信息,你应该弄的有问题啊; 本地实例名= (DESCRIPTION = (ADDRESS = (PROTOCOL = ...
- 监听的相关概念和管理监听
监听的体系结构:客户端--TCP/IP network--listener(听哪些中间件访问数据库)--database server 通常通过管理工具配置监听:EM可以配置监听 设置failove ...
- html中下拉列表监听事件,ExtJS 下拉框监听事件、日期选择器监听事件、实现动态给items添加删除数据...
本文将为您描述ExtJS 下拉框监听事件.日期选择器监听事件.实现动态给items添加删除数据,具体实现方法: 1.下拉框 下拉框选择时,触发事件的方法: 在 Ext.form.ComboBox 组件 ...
- 监听 html dom 变化,如何监听页面 DOM 变动并高效响应
比来在做 chrome 插件开辟,既然是插件那就不免纰谬现有页面做一些控制,比如事宜监听.调剂构造.对 DOM 元素的增删改查等等.个中有一个需求比较有意思,便整顿一基层便把涉及到的常识点复习一遍. ...
- Oracle监听注册和sqlnet,Oracle监听的动态注册与静态注册
Oracle监听 介于Oracle的数据库和客户端之间的通道.因为数据库本身不对外提供服务,所以需要通过监听器来实现. 几个相关的参数: local_listener db_domain remote ...
- oracle11g监听程序启动,Oracle11g无监听程序解决办法
Oracle11g无监听程序解决办法 一.监听器(LISTENER) 监听器是Oracle基于服务器端的一种网络服务,主要用于监听客户端向数据库服务器端提出的连接请求.既然是基于服务器端的服务,那么它 ...
最新文章
- 2018-3-27 专家系统
- SQL FOREIGN KEY 约束
- 11.6 java中jar包使用
- AtCoder ARC 090 E / AtCoder 3883: Avoiding Collision
- java调用url505_JAVA中三种URL连接方法
- OutOFMemoryError
- P3261-[JLOI2015]城池攻占【左偏树】
- 求一个整数数组的最大元素,递归方法实现
- oracle查询本身字符集,Oracle字符集问题总结
- CentOS 系统添加网卡
- Linux(CentOS 6.5)下配置Mono和Jexus并且部署ASP.NET MVC5
- Mysql也可以联合多表更新和删除
- 马斯克再带货狗狗币:超7成网友票选狗狗币为未来货币
- 负载均衡常见问题之会话保持-粘滞会话(Sticky Sessions)
- 韩顺平图解Java设计模式
- 985高校硕导跳槽高中当老师,博士扎堆中小学,是内卷还是进步?
- ios python 越狱_如何使用Frida绕过iOS应用程序中的越狱检测!!!
- 【电脑办公软件】万彩办公大师教程丨TextDiff文本比较工具
- html转换到pdf转换器,HTML转换到PDF转换器
- ArcGIS切片生成工具-ArcGIS缓存管理