7***@qq.com
7***@qq.com
  • 发布:2020-12-29 10:42
  • 更新:2020-12-30 17:22
  • 阅读:861

plus.barcode扫码控件打开一两秒后闪退

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win10企业版2016长期服务版

HBuilderX类型: 正式

HBuilderX版本号: 2.9.8

手机系统: Android

手机系统版本号: Android 5.1

手机机型: ZK-R323

页面类型: vue

打包方式: 离线

项目创建方式: HBuilderX

示例代码:

scanCode() {
let pages = getCurrentPages();
let page = pages[pages.length - 1]; //获取当前页面

            // #ifdef APP-PLUS  
            var currentWebview = page.$getAppWebview();  
            this.barcode = plus.barcode.create('barcode', this.barcode, { //二维码显示框  
                top: '270px',  
                left: '1084px',  
                width: '170px',  
                height: '170px',  
                position: 'static' //静态定位  
            });  
            this.barcode.onmarked = this.onmarked;  
            currentWebview.append(this.barcode);  
            this.barcode.start(); //开始扫码  
            // #endif  
        },  

        onmarked(type, result) { //扫码成功回调  
            console.log(type + ':' + result);  
            this.meeting_id = result.meeting_id  
            this.sign_token = result.sign_token  
            let params = {  
                meeting_id: this.meeting_id,  
                sign_token: this.sign_token  
            }  
            signIn(params).then(res => {  
                uni.showToast({  
                    title: '签到成功',  
                    duration: 1500,  
                });  
            }).catch(err => {  
                uni.showToast({  
                    title: err.message,  
                    duration: 1500,  
                });  
            })  
            setTimeout(function() {  
                _this.barcode.start();  
            }, 2000)  
        },  

操作步骤:

scanCode() {
let pages = getCurrentPages();
let page = pages[pages.length - 1]; //获取当前页面

            // #ifdef APP-PLUS  
            var currentWebview = page.$getAppWebview();  
            this.barcode = plus.barcode.create('barcode', this.barcode, { //二维码显示框  
                top: '270px',  
                left: '1084px',  
                width: '170px',  
                height: '170px',  
                position: 'static' //静态定位  
            });  
            this.barcode.onmarked = this.onmarked;  
            currentWebview.append(this.barcode);  
            this.barcode.start(); //开始扫码  
            // #endif  
        },  

        onmarked(type, result) { //扫码成功回调  
            console.log(type + ':' + result);  
            this.meeting_id = result.meeting_id  
            this.sign_token = result.sign_token  
            let params = {  
                meeting_id: this.meeting_id,  
                sign_token: this.sign_token  
            }  
            signIn(params).then(res => {  
                uni.showToast({  
                    title: '签到成功',  
                    duration: 1500,  
                });  
            }).catch(err => {  
                uni.showToast({  
                    title: err.message,  
                    duration: 1500,  
                });  
            })  
            setTimeout(function() {  
                _this.barcode.start();  
            }, 2000)  
        },

预期结果:

点击扫码出现扫码框后,应该持续扫码

实际结果:

点开扫码一两秒后闪退

bug描述:

开发的uniapp用于电子屏 电子屏andriod版本5.1.1 我用plus调用扫码控件 plus.barcode.create 打开扫码后正常 一两秒后闪退

2020-12-29 10:42 负责人:DCloud_Android_DQQ 分享
已邀请:
DCloud_Android_DQQ

DCloud_Android_DQQ

你用5+的demo . 试试在你的电子屏设备上 能否正常运行

  • 7***@qq.com (作者)

    暂时没弄过5+ 我刚刚试了一试 把plus.barcode.start()注释掉就不会闪退了

    2020-12-29 13:45

  • DCloud_Android_DQQ

    回复 7***@qq.com: 你用的是uni的话。 试一下 uni的 demo

    2020-12-29 16:40

  • 7***@qq.com (作者)

    回复 DCloud_Android_DQQ: 用uni的demo也是如此 打开扫码控件后 扫码开始 一两秒后闪退应用

    2020-12-30 13:29

  • 7***@qq.com (作者)

    回复 DCloud_Android_DQQ: 我本地打包之后 安装在andriod5.1的模拟器上可以正常运行 但是装在机器上就bug了

    2020-12-30 13:37

  • 7***@qq.com (作者)

    回复 DCloud_Android_DQQ: 请问有解决的办法吗

    2020-12-30 16:57

DCloud_Android_DQQ

DCloud_Android_DQQ

首先。 你的Android设备是自己定制过的。 所以不确定你这边问题出在在哪里。
其次。 你可以试一下 插件市场 这个扫码插件,是否可以使用
https://ext.dcloud.net.cn/plugin?id=2636

  • 7***@qq.com (作者)

    我把demo放在手机上运行 可以正常扫码

    2020-12-31 13:39

  • 7***@qq.com (作者)

    这个可以排除一些问题吗

    2020-12-31 13:40

  • 7***@qq.com (作者)

    我看18年有个开发者meizu手机也是遇到类似情况 你们发了测试的apk 我这边可以提供您所需信息能否帮忙看看

    2020-12-31 15:35

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