aHzak
aHzak
  • 发布:2018-06-16 00:22
  • 更新:2018-06-16 00:22
  • 阅读:1089

封装barcode的页面第二次跳入时APP崩溃

分类:HTML5+

详细问题描述
[内容]
预加载了一个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]
[电话]

2018-06-16 00:22 负责人:无 分享
已邀请:

该问题目前已经被锁定, 无法添加新回复