更新记录

1.0.1(2026-10-26)

  • 新增:startScan 支持 rotation 参数(0/90/180/270),不传时按设备实际方向自动推导,并在推导方向无结果时自动尝试相差 180° 的反方向
  • 新增:requestCameraPermission 运行时权限申请(默认相机权限),错误码新增 9070009

1.0.0(2026-09-10)

  • 初始版本
  • 支持 Android 平台
  • 支持毫秒级车牌识别
  • 支持图片识别(相册/拍照)
  • 支持实时扫描识别(相机预览)
  • 支持多种车牌类型(蓝牌、绿牌、黄牌等)
  • 支持识别置信度配置
  • 支持扫描超时设置

平台兼容性

uni-app(4.27)

Vue2 Vue2插件版本 Vue3 Vue3插件版本 Chrome Safari app-vue app-vue插件版本 app-nvue app-nvue插件版本 Android Android插件版本 iOS 鸿蒙
√ 1.0.0 √ 1.0.0 × × √ 1.0.0 √ 1.0.0 6.0 1.0.0 × ×
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
× × × × × × × × × - × ×

uni-app x(4.72)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - 6.0 × - -

其他

多语言 暗黑模式 宽屏模式 蒸汽模式
× × × √

安卓车牌识别 UTS 插件

基于 HyperLPR3 引擎的毫秒级车牌识别插件,支持 Android 平台。

功能特性

  • 毫秒级响应,识别速度快
  • 支持多种车牌类型(蓝牌、绿牌、黄牌等)
  • 支持图片识别(从相册或拍照)
  • 支持实时扫描识别(相机预览)
  • 识别置信度高,准确率高
  • 离线识别,无需网络

使用方法

1. 初始化SDK

import { initHyperLPR } from "@/uni_modules/zy-hyperlpr";

initHyperLPR({
  detLevel: 1,           // 检测级别(1-3)
  maxNum: 1,             // 最大识别数量
  recConfidenceThreshold: 0.85,  // 识别置信度阈值
  success: (res) => {
    console.log('初始化成功:', res);
  },
  fail: (err) => {
    console.error('初始化失败:', err);
  }
});

2. 图片识别

import { recognizeImage } from "@/uni_modules/zy-hyperlpr";

recognizeImage({
  image: '/path/to/image.jpg',  // 图片路径
  success: (res) => {
    console.log('识别成功:', res);
    // res.plates 包含识别到的车牌信息数组
    // res.count 为识别到的车牌数量
  },
  fail: (err) => {
    console.error('识别失败:', err);
  }
});

3. 实时扫描识别

import { startScan } from "@/uni_modules/zy-hyperlpr";

startScan({
  minConfidence: 0.85,    // 最低置信度
  stableFrames: 3,        // 稳定帧数
  timeout: 30000,         // 超时时间(毫秒)
  useBackCamera: true,    // 使用后置摄像头
  color: '#1b59f8',       // 扫描框颜色
  // rotation: 90,        // 识别方向 0/90/180/270;默认不传(按设备实际方向自动推导,推导方向无结果时自动尝试相差 180° 的反方向)
  onEvent: (event) => {
    switch (event.event) {
      case 'started':
        console.log('预览页已启动');
        break;
      case 'result':
        console.log('识别成功:', event.plate);
        break;
      case 'cancel':
        console.log('用户取消');
        break;
      case 'timeout':
        console.log('识别超时');
        break;
      case 'error':
        console.log('识别错误:', event.message);
        break;
    }
  },
  success: (res) => {
    console.log('最终识别结果:', res);
    // res.plate 车牌信息
    // res.image 识别图片base64
  },
  fail: (err) => {
    console.error('启动扫描失败:', err);
  }
});

4. 申请相机权限

实时扫描前建议先申请相机权限(startScan 在缺少相机权限时会失败并返回 9070006)。

import { requestCameraPermission } from "@/uni_modules/zy-hyperlpr";

requestCameraPermission({
  // permissions: ['android.permission.CAMERA'], // 可选,默认就是相机权限
  success: (res) => {
    // 授予与拒绝都走 success,用 granted 区分
    if (res.granted) {
      console.log('相机权限已授予');
    } else if (res.doNotAskAgain) {
      console.log('权限被拒绝且不再询问,需引导用户去系统设置开启');
    } else {
      console.log('用户拒绝了相机权限');
    }
  },
  fail: (err) => {
    console.log('权限申请失败:', err.errCode, err.errMsg);
  }
});

5. 释放资源

import { releaseHyperLPR } from "@/uni_modules/zy-hyperlpr";

releaseHyperLPR({
  success: (res) => {
    console.log('释放成功');
  },
  fail: (err) => {
    console.error('释放失败:', err);
  }
});

返回数据结构

车牌信息 (HyperLPRPlateInfo)

字段 类型 说明
code string 车牌号码
type string 车牌类型代码
typeName string 车牌类型名称(蓝牌、绿牌等)
confidence number 识别置信度(0-1)
rect object 车牌位置坐标

识别结果 (HyperLPRRecognizeResult)

字段 类型 说明
code number 状态码(0成功)
message string 状态信息
count number 识别到的车牌数量
plates array 车牌信息数组

扫描结果 (HyperLPRScanResult)

字段 类型 说明
code number 状态码(0成功)
message string 状态信息
plate object 车牌信息
image string 识别图片base64

权限要求

插件需要以下权限:

  • android.permission.CAMERA - 相机权限(实时扫描需要)
  • android.permission.READ_EXTERNAL_STORAGE - 读取存储权限(图片识别需要)

Manifest 已声明上述权限,运行时相机权限可直接调用 requestCameraPermission 申请(无需依赖 uni.authorize)。

错误码

错误码 说明
9070001 SDK未初始化或参数错误
9070002 初始化失败
9070003 启动扫描失败
9070004 取消扫描
9070005 扫描超时
9070006 缺少相机权限
9070007 初始化SDK失败
9070008 识别失败
9070009 权限申请失败

支持的车牌类型

  • 蓝色车牌(普通燃油车)
  • 绿色车牌(新能源汽车)
  • 黄色车牌(大型车辆)
  • 白色车牌(军警车辆)
  • 黑色车牌(涉外车辆)

注意事项

  1. 首次使用需要先调用 initHyperLPR 初始化SDK
  2. 实时扫描需要使用自定义基座或云打包
  3. 识别结果会自动释放监听器,无需手动管理
  4. 建议在App退出时调用 releaseHyperLPR 释放资源
  5. 识别速度与设备性能相关,毫秒级响应

许可证

MIT License

隐私、权限声明

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

android.permission.CAMERA,android.permission.READ_EXTERNAL_STORAGE,android.permission.WRITE_EXTERNAL_STORAGE

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

识别数据仅在本地处理,不上传至任何服务器

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

无