Flutter

Flutter 二维码插件:ai_barcode2.0

2021-03-17  本文已影响0人  Air_w

ai_barcode

原创文章,侵权必究!如若转载,请务必联系作者,并标注来源!
totem
:-

English Document 中文文档

ai_barcode:支持Android和IOS识别'一维条码'和'二维条码'的识别与生成

ai_barcode

亮点: ai_barcode:支持在flutter页面中嵌入Scanner以此来应对多变的业务需求

Effect

iOS-Scanner Android-Scanner
ios android
:- :-
iOS-Creator Android-Creator
ios android
:- :-
Web-Creator
web
:-
Web-Scanner
web
:-

ai_barcode项目中的实战应用flutter sample

下载安卓apk安装包 IOS安装包,请下载example后运行项目获取 博客地址

1.安装

使用当前包作为依赖库

1. 依赖此库

在文件 'pubspec.yaml' 中添加

[图片上传失败...(image-a7d72c-1585573471327)]


dependencies:

  ai_barcode: ^version

或者以下方式依赖

dependencies:

  # barcode package.
  ai_barcode:
    git:
      url: https://github.com/pdliuw/ai_barcode.git

2. 安装此库

你可以通过下面的命令行来安装此库


$ flutter pub get


你也可以通过项目开发工具通过可视化操作来执行上述步骤

3. 导入此库

现在,在你的Dart编辑代码中,你可以使用:


import 'package:ai_barcode/ai_barcode.dart';

2.使用

使用'相机'需要动态申请权限,动态权限推荐:permission_handler

配置权限

Android权限配置:


    <uses-permission android:name="android.permission.CAMERA"/>
    

iOS权限配置:


    <key>NSCameraUsageDescription</key>
    <string>Can we access your camera in order to scan barcodes?</string>


iOS支持PlatformView配置:

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

1.使用'一维条码、二维条码'的地方中:

                //cameraWidth:相机的宽度;cameraHeight相机的高度,可根据实际的业务来动态调整
                Container(
                  color: Colors.black26,
                  width: cameraWidth,
                  height: cameraHeight,
                  child: PlatformAiBarcodeScannerWidget(
                    platformScannerController: _scannerController,
                  ),
                ),

            Column(
              children: <Widget>[
                Text("生成的二维码:$_qrCodeOfInput"),
                Container(
                  width: 300,
                  height: 300,
                  decoration: ShapeDecoration(
                    shape: RoundedRectangleBorder(
                      side: BorderSide(
                        color: Colors.blue,
                        width: 15,
                      ),
                      borderRadius: BorderRadius.all(
                        Radius.circular(10),
                      ),
                    ),
                  ),
                  margin: EdgeInsets.all(40),
                  child: PlatformAiBarcodeCreatorWidget(
                    creatorController: _creatorController,
                    initialValue: "$_qrCodeOfInput",
                  ),
                ),
              ],
            ),

完整示例

完整示例,点击这里

2.调用/应用

*1、打开相机设备


          _scannerController.startCamera();

*2、打开预览/识别'条码'


          _scannerController.startCameraPreview();

*3、关闭预览/识别'条码'


      _scannerController.stopCameraPreview();

*4、关闭相机设备


      _scannerController.stopCamera();

*5、打开手电筒


      _scannerController.openFlash();

*5、关闭手电筒


      _scannerController.closeFlash();

*5、切换手电筒


      _scannerController.toggleFlash();

如果您觉得对您有所帮助,也可以"star"一下,我们得到您的鼓励后会更有动力持续推出更多有益于您的技术示例

看到这里还意犹未尽?点击,查看项目示例

感谢

iOS-一维码/二维码 识别/生成 Android-一维码/二维码 识别/生成 Web、MacOS-二维码 生成
基于: MTBBarcodeScanner 基于: dm77/barcodescanner 基于: qr_flutter
:- :- :-

待办


flutter开发者项目示例:

flutter_app_sample 帮助flutter开发者更快入门、精进,避免不必要的技术坑。
如果您觉得此项目对您有所帮助,也可以"star"一下,我们得到您的鼓励后会更有动力持续推出更多有益于您的技术示例

特征:

上一篇下一篇

猜你喜欢

热点阅读