聊聊H5浏览器实现扫一扫

在客户APP缺少扫一扫接口的情况下,通过调研并参考某文章,成功在H5中实现了这一功能。使用了react,并依赖zxing库的0.15.x或0.16.0版本。在移动端,特别是iOS Safari需11版以上且需HTTPS协议。
摘要由CSDN通过智能技术生成

我们开发了一款H5产品,原本是由小程序跳转进入的,结果客户因为域名未备案原因,导致产品无法在移动端使用。继而我们将程序嵌入APP,奈何客户方APP里面居然米有提供扫一扫接口导致产品无法使用。于是自己调研了一下怎样不借助平台自己实现扫一扫功能。找了相当多的资料,结果在某哥的文章中找到了解决方法,点此可看(掘金),在此也谢谢这位大神的文章,让我脱离苦海。接下来我讲下我的实现:

我们移动端用的是react

第一步引入插件zxing

cnpm i -S @zxing/library@0.15.1

此处注意,一定要使用0.15.x或者0.16.0版本,其他版本会报错

第二步,测试页面代码

import React, {useState, useEffect} from 'react';
import { Toast, Button } from 'antd-mobile';
import { BrowserQRCodeReader } from '@zxing/library';

// 此方法是为了兼容ios无法获取设备ID而写的
async function getVedioPermission(){
    let m = await navigator.mediaDevices.getUserMedia({video:true, audio:true}).catch(function(){Promise.resolve(null)})
    if(!
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值