[译]Flutter简易二维码扫描插件barcode |
您所在的位置:网站首页 › gloveios下载 › [译]Flutter简易二维码扫描插件barcode |
「这是我参与2022首次更文挑战的第6天,活动详情查看:2022首次更文挑战」。 本文翻译自pub: barcode_scan2 | Flutter Package (flutter-io.cn) 译时版本:barcode_scan2 4.2.0 重生原来的 barcode_scan 不再维护了,所以 barcode_scan2 诞生了,并且支持空安全。 barcode_scan2用于扫描 2D 条形码和二维码的 Flutter 插件。 该插件提供了两个常用的 iOS 和 Android 库的包装: iOS: github.com/mikebuss/MT… Android: github.com/dm77/barcod…特性: 扫描 2D 条形码 扫描二维码 控制扫描时的闪光 权限处理 开始 Android对于 Android,在使用此插件前需要做以下准备: 在 AndroidManifest.xml 中添加相机权限。 该插件使用 Kotlin 编写。所以,需要在工程中添加 Kotlin 的支持。 查看 - 安装 Kotlin 插件 。 编辑工程级别的 build.gradle 文件如下: buildscript { ext.kotlin_version = '1.3.61' // ... dependencies { // ... classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } // ...编辑应用级别的 build.gradle 文件如下: apply plugin: 'kotlin-android' // ... dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" // ... }现在你可以在 pubspec.yaml 文件中依赖 barcode_scan2(原文是 barcode_scan,个人认为应该是 barcode_scan2): dependencies: # ... barcode_scan2: any原文是: barcode_scan: any 在 Android Studio 点击 “Package get” 或在工程目录下运行 flutter package get。 iOS要在 iOS 上使用,需要在 Info.plist 中添加相机的使用描述。 NSCameraUsageDescription Camera permission is required for barcode scanning. 使用 import 'package:barcode_scan/barcode_scan.dart'; void main() async { var result = await BarcodeScanner.scan(); print(result.type); // The result type (barcode, cancelled, failed) print(result.rawContent); // The barcode content print(result.format); // The barcode format (as enum) print(result.formatNote); // If a unknown format was scanned this field contains a note } 高级用法可以给扫描方法传递选项: import 'package:barcode_scan/barcode_scan.dart'; void main() async { var options = ScanOptions( // set the options ); var result = await BarcodeScanner.scan(options: options); // ... } 支持的选项 选项类型描述支持strings.cancelStringiOS 上的取消按钮文字仅iOSstrings.flash_onString闪光开按钮文字iOS + Androidstrings.flash_offString闪光关按钮文字 textiOS + AndroidrestrictFormatBarcodeFormat[]限定可识别的格式iOS + AndroiduseCameraint用于扫描的相机的下标 (参考 BarcodeScanner.numberOfCameras)iOS + AndroidautoEnableFlashbool开始扫描时使闪光可用iOS + Androidandroid.aspectTolerancedouble在 Android上支持自动对焦仅Androidandroid.useAutoFocusbool设置用于计算最优的相机预览大小的长宽比公差仅Android 开发安装 安装 protobufMac: $ brew install protobuf $ brew install swift-protobufWindows / Linux: github.com/protocolbuf… 激活 protobuf dart 插件: $ flutter pub global activate protoc_plugin为 IDEA / Android Studio 安装 Protobuf Support 插件 或为 VS Code 安装 vscode-proto3。 如果改变了 protos.proto , 需要执行 ./generate_proto.sh 来更新 dart / swift 代码。 常见问题 Android "Could not find org.jetbrains.kotlin:kotlin-stdlib-jre..."把 org.jetbrains.kotlin:kotlin-stdlib-jre 改为 org.jetbrains.kotlin:kotlin-stdlib-jdk (StackOverflow) |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |