The QR Code Scanner package for Appeto SDK.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
juliuscanute a223a7d5cd
Merge pull request #26 from LuisThein/feature/pauseResumeCamera
7 年之前
.resources update README.md 7 年之前
android Added methods for pausing/resuming camera 7 年之前
example Added methods for pausing/resuming camera 7 年之前
ios Added methods for pausing/resuming camera 7 年之前
lib Added methods for pausing/resuming camera 7 年之前
.packages update README.md 7 年之前
CHANGELOG.md Perform Dry Run before publish -- Fixes build break (#24) 7 年之前
LICENSE Initial commit 7 年之前
README.md add build status badge 7 年之前
azure-pipelines.yml Update azure-pipelines.yml for Azure Pipelines 7 年之前
pubspec.yaml Perform Dry Run before publish -- Fixes build break (#24) 7 年之前

README.md

QR Code Scanner

Build Status

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>[
                    QRView(
                      key: qrKey,
                      onQRViewCreated: _onQRViewCreated,
                    ),          
                  ],
                ),
          );
  }

  void _onQRViewCreated(QRViewController controller) {
    final channel = controller.channel;
    controller.init(qrKey);
    this.controller = controller;
    channel.setMethodCallHandler((MethodCall call) async {
      switch (call.method) {
        case "onRecognizeQR":
          dynamic arguments = call.arguments;
          setState(() {
            qrText = arguments.toString();
          });
      }
    });
  }
  
}

iOS Integration

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

<key>io.flutter.embedded_views_preview</key>
<true/>

Flip Camera (Back/Front)

The default camera is the back camera.

controller.flipCamera();

Flash (Off/On)

By default, flash is OFF.

controller.flipFlash();

TODO’S:

  • 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