搜尋套件、儲存庫與 APP 分類

套件詳情v0.2.0

fast_qr_reader_view

一個支援多碼讀取的 widget,可在 iOS 與 Android 上提供即時預覽。使用原生程式碼進行偵測,可掃描 QR、PDF417 及 CODE39 等多種條碼。

近 30 天下載
56
喜歡數
51
Pub 分數
40

安裝套件

flutter pub add fast_qr_reader_view

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

Fast QR Reader View 是一個 Flutter 小部件,使用原生平台程式碼在 iOS 與 Android 上實現高效率,可即時掃描多種條碼類型,包括 QR 碼、PDF417 和 CODE39。它具備即時預覽相機畫面,確保精確且快速的偵測。適用於需要可靠且高效條碼掃描的應用程式,無需完全依賴純 Dart 實作。

適用情境

  • 移動庫存管理
  • 非接觸式支付處理
  • PDF417文件掃描
  • 物流中的資產追蹤
  • 快速從條碼輸入資料

主要特色

  • 原生程式碼整合以提升速度
  • 支援多種條碼格式
  • 即時攝像頭預覽
  • 跨平台相容性
  • 低延遲掃描

適合對象

  • 需要快速條碼掃描的開發人員
  • 需要即時數據捕獲的應用程式
  • 現場服務和零售應用
  • 物流和倉儲系統

使用建議

  • 需要設備上的相機權限
  • 僅限iOS和Android平台
  • 可能需要額外設定才能存取攝影機
  • 性能取決於設備硬體

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

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!

所屬分類

原始碼儲存庫

使用此套件的專案

暫無相關資料。