详细问题描述
[内容]
预加载了一个webview,里面就是用plus.barcode.Barcode封装的一个扫码页面,第一次从前一个页面跳转过来时扫描功能能正常使用,但是第二次进入后APP直接崩溃,HBuilder中也没有任何报错信息
重现步骤
[步骤]
第二次跳入扫描页面webvice
[结果]
APP崩溃
[期望]
之后跳入扫码页面webview能正常使用
运行环境
[系统版本]
Android 7.0
[浏览器版本]
[IDE版本]
HBuilder 9.0.2.201803061935
[mui版本]
Mui v3.7.2
附件
[代码片段]
mui.plusReady(function() {
var bs;
window.addEventListener("scanning", function(e) {
//setTimeout(startScan, 400);
})
mui("body").on("tap", "#lightSw", function () {
if (lightSw) {
lightSw = false;
bs.setFlash(lightSw);
this.innerHTML = "开启灯光";
} else {
lightSw = true;
bs.setFlash(lightSw);
this.innerHTML = "关闭灯光";
}
});
//startScan();
mui("body").on("tap", "#startCan", startScan)
mui("body").on("tap", "#startCanOne", function() {
plus.gallery.pick(function(path) {
plus.barcode.scan(path, function(type, code, file){
// _setCookie(type, code, file); // TODO 改为localStrange
var result = "type" + type + "<br/>code:" + code + "<br/>file:" + file;
document.getElementById("info").innerHTML = result;
},function(error){
plus.nativeUI.alert('无法识别图片');
});
},function(err){
plus.nativeUI.alert('Failed:' + err.message);
});
})
function startScan() {
// 扫描二维码
var filters = [plus.barcode.QR, plus.barcode.CODE128];
bs = new plus.barcode.Barcode("scanContainer", filters);
var option = {conserve: true, filename: "_doc/barcode/"};
bs.onmarked = onmarked;
bs.start(); //开始扫描
//bs.start(option);// 开始扫描并保存扫描图片
document.getElementById("lightSw").classList.remove("mui-disabled");
}
function onmarked(type, code, file) {
bs.close();
mui.fire(plus.webview.getLaunchWebview(), "scanOver", {
type: type,
code: code,
file: file
});
mui.back();
}
});
[安装包]
联系方式
[QQ]
[电话]