mui实现新大陆PDA扫码接收
程序员文章站
2022-04-15 21:30:00
这几天通过mui来做PDA扫码接收,想通过广播的方式进行扫描结果的接收。所以通过native.js使用原生安卓类库,要实现广播必须使用安卓BroadcastReceiver类库;但是这个类库是抽象类,没法实例化;通过查询,发现mui对这个类库进行了映射;这样就可以轻松使用这个类库操作进行功能实现了;mui.plusReady(function() {mui.init(); setTimeout(function() { scan(function(code) {...
mui新大陆PDA实现扫码接收
通过广播的方式进行扫描结果的接收。通过native.js使用原生安卓类库
mui.plusReady(function() { mui.init(); setTimeout(function() { scan(function(code) { console.log('扫描结果:' + code); GetUpperShelfApp(code); }) }, 10) if(mui.os.android) { var nativeWebview = plus.webview.currentWebview().nativeInstanceObject(); plus.android.importClass(nativeWebview); nativeWebview.requestFocus(); } else { alert(2); nativeWebview.plusCallMethod({ "setKeyboardDisplayRequiresUserAction": false }); } })
function pageInit() { var _self = plus.webview.currentWebview() localStorage.setItem('WEBVIEW_ID', _self.id) mui.back = function() { localStorage.setItem('WEBVIEW_ID', _self.opener().id) _self.close(); } } function scan(callback) { var main = plus.android.runtimeMainActivity(); //获取activity var receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver', { onReceive: function(context, intent) { //实现onReceiver回调函数 callback(intent.getStringExtra('SCAN_BARCODE1'))//SCAN_BARCODE1为条码1Extra } }); var IntentFilter = plus.android.importClass('android.content.IntentFilter'); //引入过滤器 var Intent = plus.android.importClass('android.content.Intent'); var filter = new IntentFilter(); filter.addAction('nlscan.action.SCANNER_RESULT'); //广播输出action//监听扫码广播 main.registerReceiver(receiver, filter); //注册监听 mui.toast("初始化完成。"); }
本文地址:https://blog.csdn.net/qq_37192571/article/details/108983236
上一篇: 像你这样的傻X见得多了
下一篇: 滚动加载,可视区域判断