Search packages, repositories and app categories

Package detailsv0.2.0

fast_qr_reader_view

A multi-code reader widget with live preview for both iOS and Android. Using native code for detection, scans QR, PDF417 and CODE39 among others.

30-day downloads
56
Likes
51
Pub points
40

Install package

flutter pub add fast_qr_reader_view

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Fast QR Reader View is a Flutter widget that provides real-time scanning of multiple barcode types, including QR codes, PDF417, and CODE39, using native platform code for high performance on both iOS and Android. It features a live preview camera feed, ensuring accurate and fast detection. Ideal for applications requiring reliable and efficient barcode scanning without relying solely on pure Dart implementations.

Use cases

  • Mobile inventory management
  • Contactless payment processing
  • Document scanning with PDF417
  • Asset tracking in logistics
  • Quick data entry from barcodes

Key features

  • Native code integration for speed
  • Supports multiple barcode formats
  • Live camera preview
  • Cross-platform compatibility
  • Low-latency scanning

Suitable for

  • Developers needing fast barcode scanning
  • Apps requiring real-time data capture
  • Field service and retail applications
  • Logistics and warehouse systems

Considerations

  • Requires camera permissions on devices
  • Limited to iOS and Android platforms
  • May need additional configuration for camera access
  • Performance depends on device hardware

Original README

Original README snapshot from the linked source repository. Visit the repository for the latest content.

Fast QR Reader View Plugin

See in pub

A Flutter plugin for iOS and Android allowing access to the device cameras to scan multiple type of codes (QR, PDF417, CODE39, etc). Heavily based on camera

Red box is a Flutter animation (removable). Low FPS due to GIF

Features:

  • Display live camera preview in a widget.
  • Uses native AVFoundation code detection in iOS
  • Uses ML Kit in Android

Installation

First, add fast_qr_reader_view as a dependency in your pubspec.yaml file.

iOS

Add a row to the ios/Runner/Info.plist with the key Privacy - Camera Usage Description and a usage description.

Or in text format add the key:

<key>NSCameraUsageDescription</key>
<string>Can I use the camera please?</string>
Android

Change the minimum Android sdk version to 21 (or higher) in your android/app/build.gradle file.

minSdkVersion 21
Example

Here is a small example flutter app displaying a full screen camera preview.

import 'dart:async';
import 'package:flutter/material.dart';
import 'package:fast_qr_reader_view/fast_qr_reader_view.dart';

List<CameraDescription> cameras;

Future<Null> main() async {
  cameras = await availableCameras();
  runApp(new CameraApp());
}

class CameraApp extends StatefulWidget {
  @override
  _CameraAppState createState() => new _CameraAppState();
}

class _CameraAppState extends State<CameraApp> {
  QRReaderController controller;

  @override
  void initState() {
    super.initState();
    controller = new QRReaderController(cameras[0], ResolutionPreset.medium, [CodeFormat.qr], (dynamic value){
        print(value); // the result!
    // ... do something
    // wait 3 seconds then start scanning again.
    new Future.delayed(const Duration(seconds: 3), controller.startScanning);
    });
    controller.initialize().then((_) {
      if (!mounted) {
        return;
      }
      setState(() {});
      controller.startScanning();
    });
  }

  @override
  void dispose() {
    controller?.dispose();
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    if (!controller.value.isInitialized) {
      return new Container();
    }
    return new AspectRatio(
        aspectRatio:
        controller.value.aspectRatio,
        child: new QRReaderPreview(controller));
  }
}

For a more elaborate usage example see here.

Note: This plugin is still under development, and some APIs might not be available yet. Feedback welcome and Pull Requests are most welcome!

Categories

Source repository

Projects using this package

No data available yet.