uniapp自有的uni.scanCode,在安卓8,9,10版本的时候,会出现黑屏的情况,所以使用支付宝原生插件替换此软件。
uni.scanCode({
onlyFromCamera: true, // 只允许通过相机扫码
success: function(res) {
console.log(res.result);
}
});
支付宝原生插件:按量付费的产品。此处使用扫一扫功能
1.HbuilderX项目先打包一个apk。
2.登录阿里云:https://www.aliyun.com/activity/FY23_7yuezhuti/ftqhzs?utm_content=se_1012478393
3.搜索 :移动开发平台mpaas,免费开通
右下角:立即开通
3.创建应用
应用名称自定义
Package Name要和包名一致:包名,在发布页面,包名查看。
上传apk文件,项目名称需要与你项目名称一致,完成后,下载配置。
- 在HbuilderX应用市场,下载支付宝原生插件
- 重启HbuilderX
- 在manifest.json中的app原生插件配置,填上相应的数据(此数据是刚在阿里云下载的config配置文件中)。
7.使用
var mpaasScanModule = uni.requireNativePlugin("Mpaas-Scan-Module")
mpaasScanModule.mpaasScan({
// 扫码识别类型,参数可多选,qrCode、barCode,不设置,默认识别所有
'scanType': ['qrCode','barCode'],
// 是否隐藏相册,默认false不隐藏
'hideAlbum': false
},
(ret) => {
uni.showModal({
title: "弹窗标题",
// 返回值中,resp_code 表示返回结果值,10:用户取消,11:其他错误,1000:成功
// 返回值中,resp_message 表示返回结果信息
// 返回值中,resp_result 表示扫码结果,只有成功才会有返回
content: JSON.stringify(ret),
showCancel: false,
confirmText: "确定"
})
})