qrscan 1.0.2
qrscan: ^1.0.2 copied to clipboard
Flutter plugin for scanning QR codes and barcodes, and generating QR images. Android (CameraX + ZXing) and iOS (Vision).
1.0.2 - 2026-08-22 #
- Album / path / bytes: if the first pass misses, retry at 90° / 180° / 270° (phone photos stored sideways; vertical Code 128)
- Decoder harness: 63 fixtures (field ISBT / 发血单 / 微信支付宝样式, JPEG, blur, dark, low contrast, noise, screenshot chrome, inverted, negatives)
TEST-REPORT.mdgenerated by CI
1.0.1 - 2026-08-22 #
- README demo GIF again: tap Scan, first decode, string back
- Example app is one screen, one primary button
1.0.0 - 2026-08-22 #
API freeze. Decoder covered by a 30-case JVM harness that uses the same format order as QrDecoder.
generateBarCodeencodes UTF-8 (Chinese / non-Latin no longer become?)- Codabar keeps start/stop (
RETURN_CODABAR_START_END) - Album / path / bytes: HybridBinarizer then GlobalHistogramBinarizer
- CI runs
tool/decoder-harness(QR, Latin-1, UTF-8 without ECI, Code 128/39/93, Codabar, EAN-13/8, UPC-A/E, ITF, Data Matrix, PDF417, Aztec, invert, noise)
Camera scan() is still one-shot. #90 (SM-A530W) stays open until that device retests.
0.4.0 - 2026-08-21 #
Revive for modern Flutter.
- Dart 3 / Flutter 3.10+
- Android embedding v2 only (CameraX + ZXing core)
- Real iOS scanning via Vision (camera, album, path, bytes)
- Drop JitPack
leyan95/android-zxingLibraryand storage permissions - compileSdk 35, minSdk 21, Android 13+ photo picker
- CODE_128 / CODE_39 / EAN / PDF417 / Aztec / Data Matrix
- Scanner follows device orientation (no portrait lock). CameraX
setTargetRotationon rotate; overlay recenters between top bar and torch (#45 #105 #113) - iOS preview + sample-buffer
videoOrientationfollow the interface when the host allows landscape - Decode QR (TRY_HARDER) before other 2D before 1D, so a dense QR is not stolen as UPC-E (#85)
- Stop forcing UTF-8. BYTE_SEGMENTS → UTF-8 only if valid-with-high-bit, else ISO-8859-1 (#40)
- Camera bind failure closes the scanner. Dart gets
CAMERA_START_FAILED/CAMERA_IN_USEinstead of a black Activity (#81 #130) - iOS Vision: QR/2D before 1D;
requestAccessif.notDetermined;CAMERA_START_FAILEDif no back camera - GitHub Actions CI
- Homepage updated to
wu9007/qrcode_scanner