wms-pda迁移
This commit is contained in:
67
static/js/scanCode.js
Normal file
67
static/js/scanCode.js
Normal file
@@ -0,0 +1,67 @@
|
||||
let main;
|
||||
let filter;
|
||||
let receiver;
|
||||
let tag = false;
|
||||
/**
|
||||
* 开始广播监听扫码
|
||||
*/
|
||||
const start = () => {
|
||||
/* #ifdef APP-PLUS */
|
||||
main.registerReceiver(receiver, filter);
|
||||
// console.log('开始广播监听扫码init')
|
||||
/* #endif */
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 停止广播监听扫码
|
||||
* that:传this;
|
||||
*/
|
||||
const stop = () => {
|
||||
/* #ifdef APP-PLUS */
|
||||
main.unregisterReceiver(receiver);
|
||||
// console.log('停止广播监听扫码init')
|
||||
/* #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();
|
||||
// 扫描设置的广播名称A(上面指代了)
|
||||
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);
|
||||
// 扫描设置的标签名称B(上面指代了)
|
||||
const code = intent.getStringExtra("scannerdata");
|
||||
if (tag) return;
|
||||
tag = true;
|
||||
setTimeout(function () {
|
||||
tag = false;
|
||||
}, 150);
|
||||
uni.$emit('xwscan', {
|
||||
code: code
|
||||
})
|
||||
//到这里扫描成功了,可以调用自己的业务逻辑,code就是扫描的结果 return出code进行业务处理
|
||||
onReceive
|
||||
|
||||
}
|
||||
});
|
||||
/* #endif */
|
||||
|
||||
}
|
||||
|
||||
export const broadcastScan = {
|
||||
init,
|
||||
start,
|
||||
stop,
|
||||
};
|
||||
Reference in New Issue
Block a user