一、下载

npm install react-native-camera
npm install react-native-image-picker
npm install react-native-local-barcode-recognizer

注:react-native-local-barcode-recognizer解析二维码图片,需要使用base64格式

二、使用

import LocalBarcodeRecognizer from 'react-native-local-barcode-recognizer';
import {launchImageLibrary} from 'react-native-image-picker';

  // 选择照片
  const addPicCheck = () => {
    const options = {
      mediaType: 'photo',
      includeBase64: true,//base64格式
      quality: 0.5,
      maxWidth: 200,
      maxHeight: 200,
      maxFiles: 2,
    };
    launchImageLibrary(options, response => {
      if (!response.didCancel) {
        // 相册获得的图片base64
        let source = response.assets[0].base64;
        // 处理扫描选取的二维码图片
        recoginze(source);
      }
    });
  };
  // 识别图片二维码
  const recoginze = async data => {
    let result = await LocalBarcodeRecognizer.decode(data, {
      codeTypes: ['ean13', 'qr'],
    });
    if (result) {
      //成功操作
      .......
    }
  };

三、官方示例

会将base64格式得前缀去掉

const imageBase64 = "data:image/jpeg;base64,/9j/4AA.......";

let result = await LocalBarcodeRecognizer.decode(imageBase64.replace("data:image/jpeg;base64,",""), {
            codeTypes: ['ean13', 'qr']
        });

console.log(result);

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐