var ws=null,wo=null;
var scan=null,domready=false;
// H5 plus事件处理
function plusReady(){
if(ws||!window.plus||!domready){
return;
}
// 获取窗口对象
ws=plus.webview.currentWebview();
wo=ws.opener();
// 开始扫描
ws.addEventListener('show', function(){
scan=new plus.barcode.Barcode('bcid');
scan.onmarked=onmarked;
scan.start({conserve:true,filename:'_doc/barcode/'});
}, false);
// 显示页面并关闭等待框
ws.show('pop-in');
}
if(window.plus){
plusReady();
}else{
document.addEventListener('plusready', plusReady, false);
}
// 监听DOMContentLoaded事件
document.addEventListener('DOMContentLoaded', function(){
domready=true;
plusReady();
}, false);
// 二维码扫描成功
function onmarked(type, result, file){
switch(type){
case plus.barcode.QR:
type = 'QR';
break;
case plus.barcode.EAN13:
type = 'EAN13';
break;
case plus.barcode.EAN8:
type = 'EAN8';
break;
default:
type = '其它'+type;
break;
}
result = result.replace(/\r\n/g, '');
back()
}
// 从相册中选择二维码图片
function scanPicture(){
plus.gallery.pick(function(path){
plus.barcode.scan(path,onmarked,function(error){
plus.nativeUI.alert('无法识别此图片');
});
}, function(err){
console.log('Failed: '+err.message);
});
}
function back() {
var views = plus.webview.all();
plus.webview.close(views[views.length-1].id);
}
- 发布:2020-07-23 14:51
- 更新:2020-12-09 11:44
- 阅读:812
产品分类: 其他/MUI
App下载地址或H5⽹址: https://service.dcloud.net.cn/build/download/36b57940-ccaf-11ea-8877-67400b713d06
示例代码:
操作步骤:
在首页点击扫码按钮一切正常;跳到子页面,打开扫码界面
在首页点击扫码按钮一切正常;跳到子页面,打开扫码界面
预期结果:
打开扫码界面,扫码控件加载成功
打开扫码界面,扫码控件加载成功
实际结果:
打开扫码界面,扫码控件无反应
打开扫码界面,扫码控件无反应
楼主:跟你一样的问题,你解决了吗
-
9***@qq.com (作者)
不好意思,刚刚看到你的消息;
我这里已经可以正常使用了,但是我也记不清是怎么解决的了,当时改了好多,不知道是哪一步起的作用...建议不要用HBuilder了,改用HBuilderX来打包;
如果你已经解决了,可以把你的解决方式贴到下面来;为后面的人解惑2021-01-11 15:03
9***@qq.com (作者)
这跟mui 应该没关系,首页和子页面打开的是同一个扫码界面
2020-07-29 11:10
9***@qq.com (作者)
回复 9***@qq.com: 这个只是调用手机自带扫码功能,我根本就没有引用mui
2020-07-29 11:28
9***@qq.com (作者)
回复 9***@qq.com: 我完整的扫码界面代码,已上传附件,完全没有用到mui
2020-07-29 11:35
CLP
回复 9***@qq.com: barcode.zip里的代码吗?用iPhone6p测试了没有问题能打开摄像头
2020-07-29 11:55
9***@qq.com (作者)
回复 CLP: 你跳转到宁一个页面再打开试试
2020-07-29 13:21
9***@qq.com (作者)
我再首页面打开也是没问题的,点一个按钮跳到另一个页面,在这个页面打开,就没反应了
2020-07-29 13:22
CLP
回复 9***@qq.com: 就是跳到另外一个页面试的,你可以写个简单demo测试,可能和你的其他代码有关系导致的
2020-07-29 13:32