Flutter 调用摄像头扫描二维码插件

2023-05-16

原生平台如果想要实现二维码扫描很简单,例如iOS可以根据Version库或者AVFoudation库很快定制出相应工具来,Flutter只能依赖第三方插件了。

插件依赖:

dependencies:
  flutter:
    sdk: flutter

  ...
  barcode_scan2: ^4.2.1

可以根据自己的Flutter项目选择是1代还是2代。1代不支持空安全,二代支持。
另外不要忘记了该插件最低依赖为 Android v 18,低于该平台将无法编译。

原生项目权限:

以Android为例,在Mainifexist.xml中声明一下权限:
(uses-permission标签)

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.today_art">

   <application
   ...
   </application>

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

调用

此操作是个异步任务。

ScanOptions是个界面配置模型,配置返回键文字,闪光灯开启与关闭状态的文字。result是异步返回结果。

  _openQREvent() async {
    var options = const ScanOptions(
        android: AndroidOptions(aspectTolerance: 0.5, useAutoFocus: true),
        autoEnableFlash: false,
        strings: {'cancel': '退出', 'flash_on': '开启闪光灯', 'flash_off': '关闭闪光灯'}
    );
    var result = await BarcodeScanner.scan(options: options);
    String qrcode = result.rawContent;
    print(qrcode);
    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); //
  }

界面如下:
请添加图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter 调用摄像头扫描二维码插件 的相关文章

  • 未处理的异常:MissingPluginException 错误抖动

    我正在使用 Permission handler 包并收到此错误 ERROR flutter lib ui ui dart state cc 209 Unhandled Exception MissingPluginException No
  • Flutter - 迭代对象键和值

    我有和反对 我想知道是否有一种简单的方法来迭代它的键和值 class Post String id String title String article Post this id this title this article 那没有 你
  • Flutter 扩展方法不起作用,它显示“未定义的类”和“需要扩展方法语言功能”

    我正在慢慢建立我的个人网站dlblack dev http dlblack dev 我正在尝试让它变得更有趣一点 例如 在计算机 而不是平板电脑或手机 因为它们没有鼠标指针 上 如果您将鼠标悬停在任何可单击项目上 它不会更改您的鼠标指针以指
  • 如何检查 Flutter 应用程序是否正在调试中运行?

    我正在寻找一种在应用程序处于调试模式时在 Flutter 中执行代码的方法 在 Flutter 中这可能吗 我似乎无法在文档中的任何地方找到它 像这样的东西 If app inDebugMode print Print only in de
  • Flutter 如何制作自定义Tab Bar?

    我正在 Flutter 中构建应用程序 现在我想创建自定义选项卡栏 我想要一个如图所示的标签栏 这是一个使用的解决方案CustomPainter 标签绘制器 非常基本的路径画家来绘制选项卡的背景 class TabPainter exten
  • 如何在 Flutter 创建的应用程序中隐藏 AppBar [重复]

    这个问题在这里已经有答案了 我有下面的代码 我想隐藏栏应用程序 可以吗 我已经尝试直接使用 Android 主题 但没有成功 override Widget build BuildContext context return Webview
  • Flutter:步骤小部件无法容纳展开的

    Widget stepPickerData BuildContext context SwapRequest snapData final makeSwapRequestBloc MakeSwapRequestProvider of ctx
  • 我怎样才能有一个像这样的动画SliverAppBar?

    我希望这些动画之间能够平滑 我尝试使用AnimatedSize AnimatedOpacity and AnimatedPositioned但几乎没有错误 我不知道如何使用这些SliverAppBar 在其他例子中我看到人们使用Layout
  • 禁用向下拖动以关闭 showModalBottomSheet

    如何在底部表单模态中禁用 转义向下拖动手势 以便用户可以在模态中进行交互而不会意外关闭模态 下面用实际的模态底部表进行了更新 return showModalBottomSheet context context builder Build
  • 更改 Flutter Web 应用程序中的屏幕尺寸

    我正在使用 Flutter 构建一个 Web 应用程序 但我想模仿 iPhone 屏幕视图 我知道调整窗口大小可以达到这种效果 但是有没有办法将所有内容包装在手机屏幕图形的框架中 或者更改 MaterialApp 的尺寸 使其包含在手机屏幕
  • Flutter Firestore 查询嵌套子集合

    我正在尝试查询 Firebase 中的子集合 但我总是得到一个空列表 这是我的查询 Firestore instance collection messages where idFrom isEqualTo userID snapshots
  • 对于哪些 flutter 小部件我们需要使用 const?

    我了解的好处const并且小部件不会在状态更改时重建 但当您看到下面的代码时 仍然很明显它们是常量 我希望 flutter 自动处理它 或者 flutter 已经在处理它而我却没有意识到 This makes sense to me but
  • 构建 FutureBuilder 时抛出 _TypeError(脏,状态:_FutureBuilderState 类型“Null”不是类型“List”的子类型

    我已经处理这个问题很长时间了 我正在尝试解析 JSON 并将其转换为列表视图 我收到响应正文 它也被转换为列表 但它向未来的构建器发送 null 我收到此错误 小部件库捕获的异常 构建 FutureBuilder dirty state F
  • 是否可以在flutter中开发移动键盘应用程序

    我们想要开发具有一些独特功能 例如在键盘上翻译 的移动键盘应用程序 第三方键盘 我们想知道是否有一种方法可以同时为 IOS 和 Android 开发一次 使用 Flutter 或者其他解决方案 对此有一个长的和一个短的答案 简短的回答基本上
  • 如何使用 Firebase_Auth 和 Flutter 登录 Twitter

    一个人应该如何编程使用 Twitter 登录特征使用firebase auth https pub dev packages firebase auth和颤动 我看到一些使用的例子flutter twitter login https pu
  • 如何在列表视图中滚动添加更多项目?

    这里的代码当前加载了存储在 Firestore 集合中的所有啤酒 我如何最初只加载 10 个啤酒 然后当用户向下滚动并到达 10 个啤酒列表的末尾时 它应该加载最后一次酿造后还有 10 杯 并且酿造应根据时间戳进行排序 class Brew
  • 颤振动态形式无法正常工作

    在我的应用程序中 我想创建一组动态表单 用户可以在其中添加更多项目 在这种动态形式中 它由两个文本字段 1 电话字段 2 电子邮件字段和一个下拉字段组成 但我尝试的任何事情都无法正常工作 我已经要求修复我的代码 但没有得到答复 堆栈溢出问题
  • 在 Flutter 中使用 Expansion Tile 和 ListView

    我正在尝试从此构建应用程序image https i stack imgur com gJNkO png 但是当我将 ListView 与此扩展图块放在同一页面中时 屏幕变为空 I added shrinkwrap true并工作了 但现在
  • 带操作按钮的颤动本地通知

    我在我的 flutter 项目中尝试了 flutter 本地通知插件 它在简单通知上工作正常 但我需要带有操作按钮的通知功能 请帮助我或建议我实现此功能 不幸的是 flutter local notifications 插件尚不支持操作按钮
  • 如何在 Flutter App 中按时间注销?

    如果用户在登录后对应用程序没有反应或不活动超过 5 分钟 我需要从应用程序中注销用户 该应用程序将转到主登录页面 我尝试实施给定的解决方案here https stackoverflow com questions 52602606 how

随机推荐

  • 树莓派:在VSCode中使用C#开发.Net软件(console)

    树莓派官方桌面系统支持VSCode xff0c 我们也可以在树莓派上使用C 开发 Net软件 本文作为一个笔记简单记录 1 安装VSCode xff1a 首先打开首选项中的Recommended Software xff0c 找到Progr
  • Debian DNS完整配置

    DNS服务 执行下面的命令安装 apt install y bind9 dnsutils 这些文件分别对应的作用如下 xff1a db 127 反向区域数据库 xff0c 用于将ip解析为对应的域名 db local 正向区域数据库 xff
  • 树莓派4B:跑通Paddle-Lite-Demo

    上周跟以前单位的大神见面 xff0c 期间大神聊到了百度飞桨框架 xff0c 并建议我看看能不能做点什么有意思的东西跑在树莓派上 大神就是大神 xff0c AI是我等学渣也配玩的吗 不过既然大神都这么推荐了那就尝试一下 xff0c 大不了从
  • 在NUC8上折腾安装Windows Server 2019

    整理我的吃灰物资时意外发现还有个八代的NUC迷你主机 想着现在内存和SSD都不贵 xff0c 干脆升级了然后装个Windows Server 2019玩玩 xff0c 跑个Hyper V做些实验 于是买了2根16G 2400的内存和1条1T
  • Ubuntu上跑通PaddleOCR

    书接上文 刚才说到我已经在NUC8里灌上了Windows Server 2019 接下来也顺利的启用了Hyper V角色并装好了一台Ubuntu 22 04 LTS 的虚机 由于自从上回在树莓派上跑通了Paddle Lite Demo之后想
  • 树莓派4:跑通Tensorflow的Sequential模型用于图片分类

    重要提示 xff1a 由于树莓派相对孱弱的性能 xff0c 直接在其上训练模型可能花 xff08 lang4 xff09 费非常长的时间 本文仅作为示例性的可行性参考 xff0c 请酌情考虑实验平台 著名的Tensorflow框架也可以运行
  • C# + .Net6 实现TensorFlow图片分类

    微软官网上发现一篇很有意思的文档 xff1a 教程 xff1a 用于对图像进行分类的 ML NET 分类模型 ML NET Microsoft Learn 这篇教程写的很学院派 xff0c 但有点碎 xff0c 属于上课不能打一秒钟瞌睡的那
  • 如何用一个废旧的笔记本打造一个家庭网络服务器?

    本来好好的笔记本的 xff0c 可偏偏屏幕说烂就烂 xff0c 那就干脆不要了 xff0c 改造改造吧 xff01 他本来长这样的 xff0c 如图 xff1a 什么 xff0c 你看见了水印 老哥 xff0c 别在意这些细节 简单说一下配
  • 基于Swing与MySQL之货物仓库管理系统(可为Java大作业、甚至毕业设计)

    前言 xff1a 该系统总代码行数约2100行 xff0c 采用技术栈为Swing框架与MySQL xff0c 编码环境为Eclipse 实现的功能有 xff1a 用户注册 登陆 xff1b 货物入仓 货物出仓 xff0c 货物信息更新与货
  • 使用MySQL WorkBench 如何导出数据库(包括数据)

    1 xff1a 打开MySQL WorkBench后 xff0c 选中Server xff0c Data Export 2 xff1a 在红色圈1内选中我们要导出的数据库 红色圈2是导出是否包含数据 xff1b 红色圈3是触发器等导出选项
  • Swift 如何生成随机数

    1 生成Int类型随机数 span class token keyword var span numberOne span class token punctuation span span class token builtin Int
  • Failed to start remote service “com.apple.debugserver“ on device.

    今天用真机调试时报出 Failed to start remote service com apple debugserver on device 百思不得解 遂关机重启 xff0c 果然运行成功 猜测可能是真机长时间没关机 xff0c 一
  • debian静态路由

    实验环境 xff1a 三台Debian最小化系统 xff0c 物理机是两张不同的网卡 第一台的第一张vm1网卡 192 168 10 1 24 第二台的第一张vm1网卡 192 168 10 254 24 第二台的第二张vm2网卡 192
  • 行列式与矩阵

    说明 xff1a 本公式只针对在二维或三通道的计算机视觉中所遇到的问题 xff0c 不代表传统意义上数学知识点范围 行列式 行列式概念 矩阵的行列式 xff0c 称之为det xff0c 是基于矩阵所包含的行列数据计算得到的标量 本质上是一
  • 基于SpringBoot与iOS(Swift)的电商平台设计

    技术栈 xff1a Server SpringBootSpring Data JPARedis简易分词 Client MVC架构SnpakitAlamofireSwiftyJSONkingfser xff08 过小的第三方库不阐述 xff0
  • 推荐系统 Mahout入门之简单使用

    Mahout xff1a Apache Mahout 是 Apache Software Foundation xff08 ASF xff09 旗下的一个开源项目 xff0c 提供一些可扩展的机器学习领域经典算法的实现 xff0c 旨在帮助
  • Command CompileSwiftSources failed with a nonzero exit code

    报错 xff1a Command CompileSwiftSources failed with a nonzero exit code 原因 xff1a 可能是项目目录下存在 同名不同文件夹的文件 解决方法 xff1a 检查 同名不同文件
  • Flutter 自定义SwitchButton

    效果 xff1a xff08 AppBar中间的SwitchButton xff09 代码 xff1a span class token keyword import span span class token string literal
  • diff算法swift版

    前几天用chatgpt生成diff算法 xff0c 配上swift的简洁语法 xff0c 可以称之为锦上添花 下面是代码 xff1a span class token keyword func span span class token f
  • Flutter 调用摄像头扫描二维码插件

    原生平台如果想要实现二维码扫描很简单 xff0c 例如iOS可以根据Version库或者AVFoudation库很快定制出相应工具来 xff0c Flutter只能依赖第三方插件了 插件依赖 xff1a span class token k