参考:https://ask.dcloud.net.cn/article/35044 本代码只适用基于Android 9.0 的IData T1 。其他扫码枪可以通过更改广播地址 以及更改获取获取值的方式。如下两行代码来实现其他扫码枪的扫码功能。需更改扫码结果发送模式为:广播模式
filter.addAction("android.intent.action.SCANRESULT");
var result = intent.getStringExtra("value");
完整代码如下:
mui.plusReady(function () {
var main = plus.android.runtimeMainActivity();
var context = plus.android.importClass('android.content.Context');
var receiver = plus.android.implements('io.dcloud.feature.internal.reflect.BroadcastReceiver',{
onReceive : doReceive });
var IntentFilter = plus.android.importClass('android.content.IntentFilter');
var Intent = plus.android.importClass('android.content.Intent');
var filter = new IntentFilter();
filter.addAction("android.intent.action.SCANRESULT");
main.registerReceiver(receiver,filter);
function doReceive(context, intent) {
plus.android.importClass(intent);
var result = intent.getStringExtra("value");
document.getElementById("response").innerHTML = result;
document.getElementById("search").value = result;
console.log(result);
}
})
|