【报Bug】wap2app云打包后,扫描二维码闪退,选择图片识别二维码无反应

安卓的问题,真机测试正常,云打包后有问题。

HBuilder 9.1.0.201806222137-alpha这个版本下云打包,摄像头扫描二维码闪退,选择图片识别二维码无反应,两种方式均无返回错误信息。

HBuilder 9.0.8.201806081953这个版本下云打包,摄像头扫描二维码闪退,无错误信息,选择图片识别二维码正常。

以上为亲测的情况,是wap2app.

测试的代码是直接用官方H5+演示的案例,此扫描二维码页面放在本地,在wap2app的导航栏中点击图标跳转至扫描二维码页面。

放一个百度网址的二维码,方便测试。

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8"/>

<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>

<meta name="HandheldFriendly" content="true"/>

<meta name="MobileOptimized" content="320"/>

<title>Hello H5+</title>

<script type="text/javascript" src="../js/common.js"></script>

<script type="text/javascript">

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');

wo.evalJS('closeWaiting()');

}

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, '');

wo.evalJS("scaned('"+ type +"','"+ result +"','"+ file +"');");

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);

});

}

</script>

<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8"/>

<style type="text/css">

#bcid {

width: 100%;

position: absolute;

top: 0px;

bottom: 44px;

text-align: center;

}

.tip {

color: #FFFFFF;

font-weight: bold;

text-shadow: 0px -1px #103E5C;

}

footer {

width: 100%;

height: 44px;

position: absolute;

bottom: 0px;

line-height: 44px;

text-align: center;

color: #FFF;

}

.fbt {

width: 50%;

height: 100%;

background-color: #FFCC33;

float: left;

}

.fbt:active {

-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);

box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.5);

}

</style>

</head>

<body style="background-color: #000000;">

<div id="bcid">

<div style="height:40%"></div>

<p class="tip">...载入中...</p>

</div>

<footer>

<div class="fbt" onclick="back()">取  消</div>

<div class="fbt" onclick="scanPicture()">从相册选择二维码</div>

</footer>

</body>

</html>



\n

2018-07-21 11:57 添加评论 分享
已邀请:
1

已确认此问题是因为应用没有配置震动权限(扫码成功时会震动设备)引起的,在manifest.json的权限列表中勾选“<uses-permission android:name="android.permission.VIBRATE"/>”,重现提交云端打包即可。


0

回梦無痕 - qq565766672,论坛私信不回,有需要请加QQ,付费咨询指导。

赞同来自:

自顶


0

297091002@qq.com - 做点喜欢的事情

赞同来自:

模块权限问题


0

回梦無痕 - qq565766672,论坛私信不回,有需要请加QQ,付费咨询指导。

赞同来自:

。。


0

DCloud_App_Array

赞同来自:

请提供下应用的appid(manifest.json文件中的id字段值),我们查下后台打包日志确认下问题。


要回复问题请先登录注册