English Document | 中文文档 |
---|
ai_barcode:支持Android、iOS、web识别'一维条码'和'二维条码'的识别与生成
Plugin | Pub | Points | Popularity | Likes |
---|---|---|---|---|
ai_barcode |
亮点: ai_barcode:支持在flutter页面中嵌入Scanner以此来应对多变的业务需求
iOS-Scanner | Android-Scanner |
---|---|
![]() |
![]() |
:- | :- |
iOS-Creator | Android-Creator |
---|---|
![]() |
![]() |
:- | :- |
Web-Creator | Web-Scanner |
---|---|
![]() |
![]() |
:- | :- |
ai_barcode 在项目中的实战应用flutter sample
下载安卓apk安装包 | IOS安装包,请下载example后运行项目获取 | 博客地址 |
---|
使用当前包作为依赖库
在文件 'pubspec.yaml' 中添加
Plugin | Pub | Points | Popularity | Likes |
---|---|---|---|---|
ai_barcode |
dependencies:
ai_barcode: ^version
或者以下方式依赖
dependencies:
# barcode package.
ai_barcode:
git:
url: https://github.com/pdliuw/ai_barcode.git
你可以通过下面的命令行来安装此库
$ flutter pub get
你也可以通过项目开发工具通过可视化操作来执行上述步骤
现在,在你的Dart编辑代码中,你可以使用:
import 'package:ai_barcode/ai_barcode.dart';
使用'相机'需要动态申请权限,动态权限推荐: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,
),
),
- 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",
),
),
],
),
完整示例
*1、打开相机设备
_scannerController.startCamera();
*2、打开预览/识别'条码'
_scannerController.startCameraPreview();
*3、关闭预览/识别'条码'
_scannerController.stopCameraPreview();
*4、关闭相机设备
_scannerController.stopCamera();
*5、打开手电筒
_scannerController.openFlash();
*5、关闭手电筒
_scannerController.closeFlash();
*5、切换手电筒
_scannerController.toggleFlash();
看到这里还意犹未尽?点击,查看项目示例
iOS-一维码/二维码 识别/生成 | Android-一维码/二维码 识别/生成 | Web、MacOS-二维码 生成 |
---|---|---|
基于: MTBBarcodeScanner | 基于: zxing | 基于: qr_flutter |
:- | :- | :- |
- 支持:iOS上成功扫描条形码后也可以冻结相机图像
BSD 3-Clause License
Copyright (c) 2020, pdliuw
All rights reserved.