@wisdomgarden/barcode-scanner
v1.1.16
Published
A fast and efficient (QR) barcode scanner for Capacitor
Downloads
267
Readme
from
Fork from capacitor-community/barcode-scanner of 1.2.1 Specific usage check @capacitor-community/barcode-scanner
v1.1.3
feat:
- scan manual zoom
- scan click focus
v1.1.4
fix:
- fix manual zoom bug
- fix scan scaling speed too fast by android
v1.1.5(2023-6-2)
- fix:
- fix scan scaling speed too fast by android
v1.1.6(2023-8-17)
- feat:
- 新增 setZoomFactor 方法用来设置相机缩放
- 新增设置缩放回调函数(zoomFactorChange)用来返回最新缩放值
v1.1.7(2023-12-18)
- fix:
- Fix crash when calling camera on Android
v1.1.8(2023-12-18)
- feat:
- add camera initialized event
v1.1.9(2023-12-18)
- fix:
- Fix crash when calling camera on Android
v1.1.10(2024-7-18)
- feat:
- Support gradle 7.x
v1.1.11(2024-11-14)
- feat:
- Android: replace WechatQrcode with Zxing
v1.1.12(2024-01-06)
- rename qrcode library
- add script
./android/update_libs.sh 2.2.0to update library
v1.1.13(2026-05-21)
- Android: upgrade wisdomgarden-qrcode to 2.5.0 (OpenCV 4.12.0, 16KB page alignment for Android 15)
- Android: upgrade camerascan to 1.4.1, viewfinderview to 1.4.0
- Android: migrate to AGP 8.x (namespace, compileSdk, Gradle 8.7)
- upgrade
./android/update_libs.shdefault version to 2.5.0
v1.1.14(2026-08-10)
- iOS: 新增
scanFromGallery(),从系统相册选择图片并用 Vision 解码条码/二维码,与相机扫描流程完全独立- iOS 14+ 使用
PHPickerViewController(进程外选择器,无需相册权限,也无需 Info.plist 配置) - iOS 11–13 回退到
UIImagePickerController,宿主 App 必须在自己的Info.plist中添加NSPhotoLibraryUsageDescription,否则选择器无法弹出 - 可选参数
targetedFormats(仅 iOS)限定识别的条码格式;不传则识别 Vision 默认支持的全部格式 - 用户取消选择时返回
{ hasContent: false, cancelled: true };选了图片但未识别出内容时返回{ hasContent: false }
- iOS 14+ 使用
- Android: 新增
scanFromGallery(),从系统相册选择图片并用WisdomGardenQRCodeDetector解码,与相机扫描流程完全独立(不复用startScan的 saved call)- 仅支持二维码(QR),不引入其他解码器;
targetedFormats参数为 iOS 专用,Android 忽略 - Android 13+ 使用系统相册选择器
MediaStore.ACTION_PICK_IMAGES,低版本回退到Intent.ACTION_GET_CONTENT,两者均无需任何运行时权限(不需要READ_MEDIA_IMAGES/READ_EXTERNAL_STORAGE) - 解码前按 2 的幂降采样到长边约 1600–2000px,并按 EXIF 方向旋转正立;首次识别失败且图片较小时,再用 2x 放大重试一次(应对大图中的小二维码)
- 解码在后台线程进行、结果回主线程返回;读图/解码异常一律返回
{ hasContent: false },不会崩溃或让 Promise 悬挂 - 用户取消选择时返回
{ hasContent: false, cancelled: true };选了图片但未识别出内容时返回{ hasContent: false } - 解码器初始化(
OpenCV.initOpenCV()+WisdomGardenQRCodeDetector.init())抽为一次性的独立初始化,不再依赖相机权限 - 新增依赖
androidx.exifinterface:exifinterface:1.4.2
- 仅支持二维码(QR),不引入其他解码器;
