x-mlkit-scannig-s 全屏扫码
全屏扫码。打开相机识别,也可扫相册图片。同时只能开一个。
微信内使用官方 wx.scanCode,close / scanImage 仅保留签名。
兼容性
| Harmony | IOS | Android | WEB | 小程序 |
|---|---|---|---|---|
| 支持 | 支持 | 支持 | 支持 | 支持(官方扫码) |
调用
ts
import { open, close, scanImage } from "@/uni_modules/x-mlkit-scannig-s"
open({
scanArea: { x: 0.1, y: 0.2, width: 0.8, height: 0.6 },
showScanArea: true,
success: (r) => {
console.log(r.selectedCode?.rawValue, r.texts)
}
})
scanImage({
tempFilePath: imagePath,
success: (r) => {
console.log(r.texts)
}
})
close()页面内嵌扫码请用 x-mlkit-scannig-u。
方法
| 名称 | 需要 | 说明 |
|---|---|---|
| open | 见下方 open 字段 | 打开全屏扫码,同时只能开一个 |
| close | 可选回调 | 关闭扫码页。微信为空实现 |
| scanImage | tempFilePath | 识别本地图片。微信为空实现 |
参数
open
| 字段 | 说明 | 默认 |
|---|---|---|
| onlyFromCamera | true 隐藏相册入口 | false |
| cameraPosition | front / back | back |
| torch | 闪光灯 | false |
| zoom | 倍率 | 1 |
| vibrate | 识别成功震动 | true |
| scanInterval | 最小识别间隔 ms | 300 |
| formats | 码制,如 qrCode、ean13、all | ["all"] |
| scanArea | 相对预览的归一化区域 { x, y, width, height } | 全预览 |
| showScanArea | 是否显示绿色取景框 | true |
| success / fail / complete | 回调 | - |
XScanningResult:source(camera / album)、codes、texts、selectedCode、viewWidth / viewHeight、scanArea、timestamp。
scanImage:tempFilePath 必填。
平台差异
- 微信:官方扫码,无码坐标;
close/scanImage为空实现,showScanArea无效。 - 鸿蒙前置相机不可用,
front返回 2002。 - 重复
open返回 2007。
版本
版权归https://xui.tmui.design你不得修改及二次开发,仅供TMUI4会员商用使用。不得转给非VIP会员使用,一经查实数倍赔偿,并追究法律责任。
更新日志
2.0.1(2026-08-24)
- 增加
showScanArea,可关闭绿色取景框。
2.0.0(2026-07-31)
- 破坏性更新,统一为Dcloud函数式风格调用
- 所有端得到增强
- web也支持多码识别
1.1.3(2025-11-30)
- 旧版本增加 HarmonyOS 实现。
1.1.1(2025-02-13)
- 旧 Web/微信实现调整图片识别。
1.0.9(2024-11-18)
- 增加闪光灯控制。
1.0.8(2024-09-12)
- 调整 Android 扫描页面兼容性。
1.0.7(2024-08-31)
- 增加仅相机识别选项。
1.0.0(2024-01-24)
- 首次发布。
