Flutter 二维码插件:ai_barcode2.0
2021-03-17 本文已影响0人
Air_w
ai_barcode
原创文章,侵权必究!如若转载,请务必联系作者,并标注来源! |
---|
totem |
:- |
English Document | 中文文档 |
---|
ai_barcode:支持Android和IOS识别'一维条码'和'二维条码'的识别与生成
亮点: 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.使用'一维条码、二维条码'的地方中:
- 1、识别条码 简要示例
//cameraWidth:相机的宽度;cameraHeight相机的高度,可根据实际的业务来动态调整
Container(
color: Colors.black26,
width: cameraWidth,
height: cameraHeight,
child: PlatformAiBarcodeScannerWidget(
platformScannerController: _scannerController,
),
),
- 2、生成/创建条码 简要示例
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 |
:- | :- | :- |
待办
- 支持:生成条码
- 支持:iOS上成功扫描条形码后也可以冻结相机图像
flutter开发者项目示例:
flutter_app_sample 帮助flutter开发者更快入门、精进,避免不必要的技术坑。
如果您觉得此项目对您有所帮助,也可以"star"一下,我们得到您的鼓励后会更有动力持续推出更多有益于您的技术示例
特征:
- 本项目是主打技术示例,所以涉及到的需求会比较少,涉及到的技术会比较多
- 本项目是为flutter开发者专门打造的“Api demo app”
- 本项目不仅包含flutter 各种widget组件,还包含开发包、插件,以及与各平台platforms交互、通信(Platform Channel)的技术示例。
- 移步查看更多特征......