小熊是安妮的
小熊是安妮的
  • 发布:2019-05-11 11:06
  • 更新:2019-05-15 18:17
  • 阅读:1222

【报Bug】使用Barcode扫码控件对象开发App自定义扫码通过web-view引入,打包后的ios底部会出现白条

分类:uni-app

详细问题描述

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]

重现步骤

[步骤]

<script type="text/javascript">
var plusReady = function(callback) {
if (window.plus && window.plus.isReady) {
callback();
} else {
document.addEventListener('plusready', function() {
callback();
}, false);
}
};
plusReady(function() {
var options = {
barcodeId: 'barcode',
scanTypes: [plus.barcode.QR, plus.barcode.EAN13, plus.barcode.EAN8],
styles: {
top: 0,
left: 0,
bottom: 0,
right: 0,
width: window.screen.width,
height: window.screen.height, //这里是获取屏幕空余的高,100%试过了,也是一样的问题
background: 'rgba(27,27,27,0.3);',
frameColor: 'rgba(27,27,27,0.3);',
scanbarColor: 'rgba(27,27,27,0.3);',
},
storageKey: 'barcode_value'
};
var currentWebview = plus.webview.currentWebview();
var barcode = plus.barcode.create(options.barcodeId, options.scanTypes, options.styles);
var goBack = function() {
barcode.close();
currentWebview.close();
};

            barcode.onmarked = function(type, code, file) {  
                plus.storage.setItem(options.storageKey, JSON.stringify({  
                    code: 0,  
                    result: code  
                }));  
                goBack();  
            };  
            barcode.onerror = function(error) {  
                plus.storage.setItem(options.storageKey, JSON.stringify({  
                    code: 1000,  
                    result: ''  
                }));  
                goBack();  
            };  
            currentWebview.append(barcode);  
            barcode.start();  

            plus.storage.removeItem(options.storageKey);  

            plus.key.addEventListener('backbutton', function() {  
                goBack();  
            });  
        });  
    </script>  

底部也附带了一个dome,是网上下载的,我复制的这个。

[结果]
安卓,web不管是打包还是别的都没有问题,但到了苹果手机就不行了。会出现白条的问题,苹果6也是全屏的,但以后的机型就不行了

[期望] 这个要怎么解决一下啊,我想劝这个客户善良了啊,有哪位大佬帮忙解答一下,万分感谢!!!

[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]

[IDE版本号]

[windows版本号]

[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]

[运行端版本号]

[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]

[编译模式是老模板模式还是新的自定义组件模式?]

App运行环境说明

[Android版本号]

[iOS版本号] 苹果6以后,苹果6测试没有问题

[手机型号] 苹果6以后,苹果6测试没有问题

[模拟器型号]

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]

联系方式

[QQ]

2019-05-11 11:06 负责人:无 分享
已邀请:
9***@qq.com

9***@qq.com

ios刘海屏设备的 安全区域 下面代码去掉 在manifest.json
"app-plus" : {
/ 5+App特有相关 /
"safearea" : {
"bottom" : {
"offset" : "none"
}
}
},

  • 小熊是安妮的 (作者)

    额,就是要分ios和安卓设备,还是分ios的刘海屏和普通屏的?

    2019-05-17 11:01

  • 小熊是安妮的 (作者)

    安卓的都没问题,就适配苹果的,是个头疼的事

    2019-05-17 11:01

  • 9***@qq.com

    只是ios有这个安全区域的概念。安卓好像没。没发现。配置上去没啥不妥

    2019-05-24 13:58

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