The QR Code Scanner package for Appeto SDK.
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
 
 
Julian Steenbakker 2148ed0cd4 Fixed night mode. 5 lat temu
.github/workflows Add analysis_options.yaml file for CI and fix hints 6 lat temu
.resources Remove unused .gif files 6 lat temu
android Fixed night mode. 5 lat temu
example Changed minSdkVersion to 19 6 lat temu
ios Fix disposing camera from memory 5 lat temu
lib Add analysis_options.yaml file for CI and fix hints 6 lat temu
.gitignore .gitgnore all the things 6 lat temu
CHANGELOG.md Bump to 0.0.13 6 lat temu
LICENSE Initial commit 7 lat temu
README.md Add NSCameraUsageDescription example 6 lat temu
analysis_options.yaml Add analysis_options.yaml file for CI and fix hints 6 lat temu
pubspec.yaml Bump to 0.0.13 6 lat temu

README.md

QR Code Scanner

GH Actions

A QR code scanner that works on both iOS and Android by natively embedding the platform view within Flutter. The integration with Flutter is seamless, much better than jumping into a native Activity or a ViewController to perform the scan.

Screenshots

Android

iOS

Get Scanned QR Code

When a QR code is recognized, the text identified will be set in ‘qrText’.

class _QRViewExampleState extends State<QRViewExample> {
  final GlobalKey qrKey = GlobalKey(debugLabel: 'QR');
  var qrText = "";
  QRViewController controller;

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Column(
        children: <Widget>[
          Expanded(
            flex: 5,
            child: QRView(
              key: qrKey,
              onQRViewCreated: _onQRViewCreated,
            ),
          ),
          Expanded(
            flex: 1,
            child: Center(
              child: Text('Scan result: $qrText'),
            ),
          )
        ],
      ),
    );
  }

  void _onQRViewCreated(QRViewController controller) {
    this.controller = controller;
    controller.scannedDataStream.listen((scanData) {
      setState(() {
        qrText = scanData;
      });
    });
  }

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

iOS Integration

In order to use this plugin, add the following to your Info.plist file:

<key>io.flutter.embedded_views_preview</key>
<true/>
<key>NSCameraUsageDescription</key>
<string>This app needs camera access to scan QR codes</string>

Flip Camera (Back/Front)

The default camera is the back camera.

controller.flipCamera();

Flash (Off/On)

By default, flash is OFF.

controller.toggleFlash();

Resume/Pause

Pause camera stream and scanner.

controller.pause();

Resume camera stream and scanner.

controller.resume();

SDK

Requires at least SDK 24 (Android 7.0).

TODOs

  • iOS Native embedding is written to match what is supported in the framework as of the date of publication of this package. It needs to be improved as the framework support improves.
  • In future, options will be provided for default states.
  • Finally, I welcome PR’s to make it better :), thanks

Credits