1. 官网扫码api说明
- app端可直接调用api扫码(后置),前置扫码参考摄像头扫码功能封装
// 允许从相机和相册扫码
scanCode:function(){
// #ifndef H5
uni.scanCode({
success:function(res){
console.log('条码类型:' + res.scanType + "");
console.log('条码内容:' + res.result + "");
console.log('条码字符集:' + res.charSet + "");
uni.showModal({
title: '条码类型:' + res.scanType + "",
content: '条码内容:' + res.result + ""
})
},
fail:function(e){
console.log('扫描fail:' + JSON.stringify(e));
},
complete:function(){
console.log('扫描complete');
}
})
// #endif
},
- h5端不支持调用api扫码
2. 扫描识别常见问题
(1) 常见引起识别率不高的原因
- 配置了过多扫码类型。因为不同码制有不同的解码算法,一张图,软件需要根据配置的所有扫码算法挨着尝试解码,就会导致较慢。 如果扫码的类型是相对固定的,把码制范围控制下,扫码速度会提升。
- 弱光下扫码识别率不高的问题。请打开闪光灯
- 扫码的区域保证是正方形,占位div高宽要一样。
(2) 顶部选项卡div模式下,扫描二维码控件位置偏移
(3) Barcod二维码扫描及其结果在webview中的信息的传递
(4) 开发身份证扫描、银行卡识别等ocr识别需求
(5) 开发活体检测、人脸识别等生物认证需求
3. 实践问题
- 测试平板硬件性能差(默认使用后置摄像头扫码):像素低,识别速度极慢(后置摄像头200万像素)
- 要求使用前置摄像头扫码:功能尚未实现(听过可通过webview组件中嵌入h5页面实现,尚未尝试);就算成功实现前置摄像头扫码,也有后置摄像头扫码同样的问题且问题更严重(前置摄像头才
30万像素)
网友评论