HarmonyOS Next鸿蒙扫一扫功能实现

embedded/2024/11/13 9:52:03/

直接使用的是华为官方提供的api,封装成一个工具类方便调用。

import { common } from '@kit.AbilityKit';
import { scanBarcode, scanCore } from '@kit.ScanKit';export namespace ScanUtil {export async function startScan(context: common.Context) : Promise<string> {if (canIUse('SystemCapability.Multimedia.Scan.Core')) {// 定义扫码参数optionslet options: scanBarcode.ScanOptions = {scanTypes: [scanCore.ScanType.ALL],enableMultiMode: true,enableAlbum: true};if (canIUse('SystemCapability.Multimedia.Scan.ScanBarcode')) {let result: scanBarcode.ScanResult = await scanBarcode.startScanForResult(context, options)return result.originalValue}}throw new Error('该设备不支持扫码功能')}
}

使用方法:

Button('打开扫一扫').onClick(()=>{ScanUtil.startScan(getContext()).then((result)=>{//成功识别到二维码内容promptAction.showToast({message: `result:${result}`,duration: 3000})}).catch((error:BusinessError)=>{//一般是模拟器会跑到这里报异常promptAction.showToast({message: `error:${error}`,duration: 3000})})})


http://www.ppmy.cn/embedded/113996.html

相关文章

python学习笔记目录

基于windows下docker安装HDDM-CSDN博客 在python中安装HDDM-CSDN博客&#xff08;这个办法没安装成功&#xff09;

前端工程师职业发展路线图

在前端开发领域&#xff0c;从一个新手成长为一名资深工程师需要经过一系列的学习和实践。以下是一份详细的前端工程师职业发展路线图&#xff0c;包括了从基础到高级的各个阶段。 入门阶段 1. 学习基础技术 HTML/HTML5&#xff1a;掌握网页结构和语义化标签的使用。CSS/CSS…

Luban策划开源工具

一、Luban游戏配置解决方案&#xff0c;是一个强大、易用、优雅、稳定的游戏配置解决方案。它设计目标为满足从小型到超大型游戏项目的简单到复杂的游戏配置工作流需求。luban标准化了游戏配置开发工作流&#xff0c;可以极大提升策划和程序的工作效率。 二、核心特性&#xf…

C# UDP与TCP点发【速发速断】模式

1、UDP 客户端 //由于收发都在本机&#xff0c;所以只用一个IP地址 IPAddress addr IPAddress.Parse("127.0.0.1"); var ptLocal new IPEndPoint(addr&#xff0c;9001);//本机节点&#xff0c;用于发送var ptDst new IPEndPoint(addr&#xff0c;9002);//目标节点…

maven pom文件中的变量定义

在 Maven 中&#xff0c;可以使用变量来简化 pom.xml 文件的维护和管理。这些变量通常被称为 属性 (properties)&#xff0c;可以用来存储经常使用的值&#xff0c;如版本号、依赖库的版本等。使用属性可以使 pom.xml 更易于管理和维护&#xff0c;并且可以减少出错的机会。 下…

Modbus_tcp

目录 一&#xff1a;modbus起源 1.起源 2. 分类&#xff1a; 3. 优势&#xff1a; 4. 应用场景&#xff1a; 5.ModbusTCP特点&#xff08;掌握&#xff09;&#xff1a; 二、 ModbusTCP的协议 1. 报文头 2. 寄存器 1. 线圈&#xff08;Coils&#xff09; 2. 离…

重学SpringBoot3-SpringApplicationRunListener

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 重学SpringBoot3-SpringApplicationRunListener 1. 基本作用2. 如何实现2.1. 创建SpringApplicationRunListener2.2. 注册SpringApplicationRunListener2.3. 完整示例 3.…

财谷通抖音小店的独特魅力

在当今这个数字化飞速发展的时代&#xff0c;电子商务已成为推动经济增长的重要引擎之一&#xff0c;而短视频平台的崛起&#xff0c;更是为这一领域注入了新的活力。抖音&#xff0c;作为短视频领域的佼佼者&#xff0c;不仅是一个娱乐消遣的平台&#xff0c;更是一个潜力巨大…