更新记录

1.0.1(2026-04-17)

初始化发布


平台兼容性

其他

多语言 暗黑模式 宽屏模式

yq-Scan

yq-Scan 是一个基于 UTS 的 Android 扫码插件,底层接入 Google Code Scanner,适合在 uni-app 项目中快速实现二维码、条码识别。

插件特点

  • 仅支持 Android
  • 默认无需相机权限
  • 支持常见条码格式
  • 支持自动缩放
  • 支持手动输入
  • 支持一次性回调结果

平台支持

  • App-Android
  • minSdkVersion: 23

安装方式

uni_modules/yq-scan 放入项目的 uni_modules 目录后即可使用。

使用方法(示例)

在 script 中引入

import {
  setDebug,
  setDefaultFormats,
  setAutoZoom,
  setAllowManualInput,
  scan,
  scanWithOptions
} from "@/uni_modules/yq-scan";

在 methods 中调用

export default {
  data() {
    return {
      scanResult: ""
    };
  },
  methods: {
    onScan() {
      scanWithOptions({
        formats: ["QR_CODE", "CODE_128"],
        autoZoom: true,
        allowManualInput: false
      }, (res) => {
        console.log(res);
        if (res.code === 0) {
          this.scanResult = res.data?.rawValue || res.data?.text || "";
        } else {
          this.scanResult = res.msg;
        }
      });
    }
  }
};

API 说明

setDebug(enabled)

开启或关闭调试日志。

  • enabled Boolean

setDefaultFormats(formats)

设置默认识别格式。

  • formats Array<String>

setAutoZoom(enabled)

设置是否开启自动缩放。

  • enabled Boolean

setAllowManualInput(enabled)

设置是否允许手动输入。

  • enabled Boolean

scan(callback)

使用默认配置发起扫码。

  • callback Function

scanWithOptions(options, callback)

使用自定义参数发起扫码。

  • options Object
  • callback Function

参数说明

scanWithOptions 参数

{
  formats: ["QR_CODE"],
  autoZoom: true,
  allowManualInput: false
}

支持的格式

  • QR_CODE
  • AZTEC
  • DATA_MATRIX
  • PDF417
  • CODE_128
  • CODE_39
  • CODE_93
  • CODABAR
  • EAN_8
  • EAN_13
  • ITF
  • UPC_A
  • UPC_E

参数说明

属性名 类型 默认值 说明
formats Array<String> ["QR_CODE"] 识别格式
autoZoom Boolean true 是否开启自动缩放
allowManualInput Boolean false 是否允许手动输入

回调结果

{
  code: 0,
  msg: "扫码成功",
  data: {
    text: "扫码内容",
    rawValue: "扫码内容",
    displayValue: "展示内容",
    format: "QR_CODE",
    formatCode: 256,
    valueType: 1,
    source: "code_scanner"
  }
}

状态码

  • 0:扫码成功
  • -1:扫码失败
  • -2:用户取消
  • -4:当前环境无法获取 Activity
  • -5:扫码进行中,请勿重复调用

注意事项

  • 插件依赖 Google Play services
  • 扫码界面由系统/Google 提供,不是自定义组件
  • 当前版本仅提供默认扫码界面,不支持 customWebviewcustomResName 这类自定义页面/原生布局参数
  • 如需完全自定义扫码 UI,可在此基础上继续扩展为组件插件或原生插件

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

插件不采集任何数据

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。