当前位置: 首页 > news >正文

Google 扫码器(仅限 Android)

Google 扫码器(仅限 Android)

Google Code Scanner API 提供了全面的扫描解决方案,无需您的应用请求相机权限,同时保护用户隐私。这是通过将扫描代码委托给 Google Play 服务并仅将扫描结果返回给您的应用来完成的(视频 1)。 所有图片处理操作都在设备上进行,并且 Google 不会存储结果或图片数据。该 API 支持与机器学习套件条形码扫描 API 相同的代码格式,并返回相同的 Barcode 对象。

此 API 非常适合需要无缝代码扫描(无需自定义界面或相机体验)的应用。该实现完全属于 Google Play 服务,可以确保对应用大小的影响最小。

 

对于需要自定义界面的更复杂的使用场景,我们建议直接使用 ML Kit Barcode Scanning API。

如果您有任何疑问、想要提交 bug 或需要帮助,请查看机器学习套件社区页面。

此 API 使用未捆绑库,必须先下载才能使用。如需了解详情,请参阅此指南。

须知事项

此 API 需要 Android API 级别 21 或更高级别。确保应用的 build 文件使用的 minSdkVersion 值不小于 21。

为了让您的应用做好准备,请完成以下部分中的步骤。

配置您的应用

  1. 在顶级 settings.gradle 文件的 dependencyResolutionManagement 代码块下,添加 Google 的 Maven 代码库和 Maven 中央代码库:

    dependencyResolutionManagement {repositories {google()mavenCentral()}
    }
    
  2. 将 play-services-code-scanner SDK 的 Google Play 服务依赖项添加到模块的 Gradle build 文件(通常为 app/build.gradle)中:

    dependencies {implementation 'com.google.android.gms:play-services-code-scanner:16.1.0'
    }
    
  3. 您可以将应用配置为让 Google Play 服务在您的应用从 Play 商店安装时自动将其下载到设备上。

    <application ...>...<meta-dataandroid:name="com.google.mlkit.vision.DEPENDENCIES"android:value="barcode_ui"/>...
    </application>
    

    您还可以通过 Google Play 服务 ModuleInstallClient API 明确检查扫描器模块可用性并请求下载。

    如果您不启用安装时模块下载或请求显式下载,并且扫描器模块尚未针对其他用例进行安装,Google Play 服务会在首次使用扫描器模块时下载该模块。

扫描二维码

扫描条形码以执行下列步骤。

  1. 可选:配置扫码器。

    如果您知道自己要读取哪些格式的条形码,可以将条形码检测器配置为仅检测这些格式,从而加快条形码检测器的速度。例如,如需仅检测 Aztec 码和 QR 码,请按照以下示例构建 GmsBarcodeScannerOptions 对象:

    KotlinJava

    GmsBarcodeScannerOptions options = new GmsBarcodeScannerOptions.Builder().setBarcodeFormats(Barcode.FORMAT_QR_CODE,Barcode.FORMAT_AZTEC).build();
    

    默认情况下,自动缩放功能处于关闭状态。如需启用 16.1.0 及更高版本的自动缩放功能,请调用 enableAutoZoom(),如以下代码示例所示。

    KotlinJava

    GmsBarcodeScannerOptions options = new GmsBarcodeScannerOptions.Builder().setBarcodeFormats(...).enableAutoZoom() // available on 16.1.0 and higher.build();
    
  2. 获取 GmsBarcodeScanner 的实例,如代码示例所示:

    KotlinJava

    GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(this);
    // Or with a configured options
    // GmsBarcodeScanner scanner = GmsBarcodeScanning.getClient(context, options);
    
  3. 通过调用 startScan() 请求代码扫描。

    KotlinJava

    scanner.startScan().addOnSuccessListener(barcode -> {// Task completed successfully}).addOnCanceledListener(() -> {// Task canceled}).addOnFailureListener(e -> {// Task failed with an exception});
    
  4. 处理生成的 Barcode。

    KotlinJava

    String rawValue = barcode.getRawValue();

相关文章:

Google 扫码器(仅限 Android)

Google 扫码器&#xff08;仅限 Android&#xff09; Google Code Scanner API 提供了全面的扫描解决方案&#xff0c;无需您的应用请求相机权限&#xff0c;同时保护用户隐私。这是通过将扫描代码委托给 Google Play 服务并仅将扫描结果返回给您的应用来完成的&#xff08;视…...

pandoc word转markdown之后正则修改

问题 用pandoc工具将doc文件转换为markdown文件后&#xff0c;有关图片的处理会变成&#xff1a; (./url路径){width“3.46875in” height“1.0729166666666667in”} 但是我要展示到前端的&#xff0c;前端组件用的v-md-preview&#xff0c;结果展示的时候&#xff0c;后面的宽…...

使用Python和wxPython将图片转换为草图

导语: 将照片转换为艺术风格的草图是一种有趣的方式&#xff0c;可以为您的图像添加独特的效果。在本文中&#xff0c;我们将介绍如何使用Python编程语言和wxPython图形用户界面库来实现这一目标。我们将探讨如何使用OpenCV库将图像转换为草图&#xff0c;并使用wxPython创建一…...

深入浅出对话系统——闲聊对话系统进阶

引言 本文主要关注生成式闲聊对话系统的进阶技术。 基于Transformer的对话生成模型 本节主要介绍GPT系列文章&#xff0c;这是由OpenAI团队推出的&#xff0c;现在大火的ChatGPT也是它们推出的。 GPT : Improving Language Understanding by Generative Pre-Traini ng 在自…...

List与Set的区别

List与Set的区别 大家好&#xff0c;在我们平时的代码编写过程中&#xff0c;经常会碰到需要使用到集合类型: List与Set。很多时候&#xff0c;我们可能会将它们视为同一种类型进行使用&#xff0c;但是在实际的编程逻辑中&#xff0c;它们之间是存在很大差别的。接下来我们就…...

MyBatis 实战指南:探索灵活持久化的艺术

文章目录 前言一、初识 MyBatis1.1 什么是 MyBatis1.2 为什么学习 MyBatis 二、MyBatis 在软件开发框架中的定位三、基于 Spring Boot 创建 MyBatis 项目3.1 添加 MyBatis 框架的支持3.2 配置数据库连接信息和映射文件的保存路径&#xff08;Mapper XML&#xff09; 四、MyBati…...

高中教师能去美国做访问学者吗?

美国作为世界上高等教育水平较高的国家之一&#xff0c;吸引了众多学者前往交流学习。那么高中教师是否能够成为美国访问学者&#xff0c;这是当然的&#xff0c;高中老师是可以出国访学的&#xff0c;但是出国做访问学者会涉及到多方面的因素。 首先&#xff0c;教师个人的学术…...

93 | Python 设计模式 —— 建造者模式

文章目录 什么是建造者模式?建造者模式的四个角色Python建造者模式示例建造者模式的优点建造者模式的适用场景案例1:股票价格监控案例2:天气预报系统总结当构建复杂对象时,经常会遇到对象的创建过程非常复杂、包含多个步骤、或者有不同的配置选项。这时,使用建造者模式是一…...

nacos升级开启鉴权后,微服务无法连接的解决方案

版本&#xff1a; 软件版本号备注spring boot2.2.5.RELEASEspring-cloudHoxton.SR3spring-cloud-alibaba2.2.1.RELEASEnacos2.0.1从1.4.2版本进行升级。同时作为注册中心和配置中心 一、升级nacos版本&#xff0c;开启鉴权 1.在application.properties配置文件开启鉴权&…...

elementui弹窗页按钮重复提交问题解决

一、BUG场景 ruoyi平台&#xff0c;页面弹出窗有提交按钮&#xff0c;在提交时连续多次点击会发生重复提交。 二、错误方案 给按钮增加 :loading"submitLoading" 属性。 <el-dialog :title"title" :v-if"open" :visible.sync"open&…...

HBase-读流程

创建连接同写流程。 &#xff08;1&#xff09;读取本地缓存中的Meta表信息&#xff1b;&#xff08;第一次启动客户端为空&#xff09; &#xff08;2&#xff09;向ZK发起读取Meta表所在位置的请求&#xff1b; &#xff08;3&#xff09;ZK正常返回Meta表所在位置&#x…...

Matlab绘图 图例legend 太长,怎么减小指示线的长度

来源 绘图时&#xff0c;稍微减小文字已经不能正常放下图例&#xff0c;想通过调整图例指示线段长度缩减整个图例长度。 方法一 参考matlab官方论坛 leg legend(Plot1,Plot2,...); leg.ItemTokenSize [x1,x2]; By default x130 and x218 so put larger or smaller number…...

力扣17(电话号码中的字符组合)

题目表述 给定一个仅包含数字 2-9 的字符串&#xff0c;返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下&#xff08;与电话按键相同&#xff09;。注意 1 不对应任何字母。 示例1 输入&#xff1a;digits "23" 输出&#xff1…...

vue+element 下载压缩包和导出

export function goodsInspectionReportDwnloadZip (params) {return axios({url: "/warehouse-entry-server/v1/goodsInspectionReport/downloadZip",method: "get",params,responseType: "blob"}) } //下载handleDownloadFile() {if (!this.$r…...

构建Docker容器监控系统 (1)(Cadvisor +InfluxDB+Grafana)

目录 Cadvisor InfluxDBGrafana 1. Cadvisor 2.InfluxDB 3.Grafana 开始部署&#xff1a; 下载组件镜像 创建自定义网络 创建influxdb容器 创建数据库和数据库用户 创建Cadvisor 容器 准备测试镜像 创建granafa容器 访问granfana 添加数据源 Add data source 新建 …...

hive编译报错整理

背景 最近在修hive-1.2.0的一个bug&#xff0c;需要修改后重新打包部署到集群&#xff0c;打包的时候报下面的错误&#xff0c;原因很简单&#xff0c;从远程仓库里面已经拉不到这个包了。 org.pentaho:pentaho-aggdesigner-algorithm:jar:5.1.5-jhyde was not found in http…...

centos磁盘爆满可以清理mysql-bin.000011吗

mysql-bin.000011 是 MySQL 的二进制日志文件&#xff0c;用于记录数据库中的更改操作。删除该文件可能会导致数据库恢复、备份和复制等功能的中断或数据丢失。因此&#xff0c;在删除任何 MySQL 的二进制日志文件之前&#xff0c;请确保您了解其潜在影响并采取适当的备份措施。…...

SSM个人博客项目

文章目录 SSM个人博客系统实现项目介绍 一、准备工作0. 创建项目添加对应依赖1. 数据库设计2. 定时实体类 二、功能实现1.统一功能处理统一返回格式统一异常处理定义登录拦截器 2. 注册登录实现生成获取验证码密码加盐实现注册功能登录功能注销功能 3.登录用户博客列表获取登录…...

vue插槽是什么?如何使用?

1、意义 插槽是vue提供的一个内置组件&#xff0c;是一个占位符。作用是可以向组件中传递一段html代码&#xff0c;加强了组件封装性以及复用性。 2、分类 插槽通常分为匿名插槽、具名插槽、作用域插槽 匿名插槽&#xff1a; 顾名思义就是没有名字的插槽&#xff0c;我们通…...

yum常用操作命令

目录 查询命令 查看当前所有仓库 检查可升级的程序 安装、卸载、升级 清除缓存命令 生成缓存 查询命令 列出已安装的软件包&#xff1a;yum list installed列出仓库中还未安装的软件包&#xff1a;yum list available列出指定软件包的依赖关系&#xff1a;yum deplist &…...

嵌入式AI四大趋势:硬件定义模型、工具链平民化、多模态融合与系统级安全

1. 项目概述&#xff1a;嵌入式AI的十字路口与新机遇最近和几位在芯片原厂、终端设备公司做研发的朋友聊天&#xff0c;大家不约而同地都在讨论同一个话题&#xff1a;嵌入式AI的玩法&#xff0c;好像和几年前不太一样了。过去我们一提到“嵌入式AI”&#xff0c;脑子里蹦出来的…...

书匠策AI降重降AIGC实测|官网www.shujiangce.com |微信公众号搜一搜 书匠策AI

&#x1f9ea; 一个实验室级别的"论文手术台" 各位正在跟毕业论文死磕的朋友&#xff0c;我今天不讲方法论&#xff0c;不拆写作技巧&#xff0c;我要给你们开一间"论文急诊室"。 你有没有经历过这种绝望&#xff1a;辛辛苦苦写完一万字&#xff0c;查重…...

快速完成一篇重复率和AI率都很低的英文论文!(亲测有效)

写英文论文对于很多同学来说比较困难&#xff0c;今天给大家分享一下如何快速完成一篇英文论文。 直接说操作方法&#xff1a; 一、打开任何一个AI工具&#xff0c;输入指令&#xff1a;我是英文专业的毕业生&#xff0c;我的论文题目是《XXXX》&#xff0c;论文正文8000字&a…...

工具推荐:HTML5+AI开发必备的前端调试工具

工具推荐&#xff1a;HTML5AI开发必备的前端调试工具 工具推荐&#xff1a;HTML5AI开发必备的前端调试工具&#x1f4dd; 本章学习目标&#xff1a;本章聚焦职业发展&#xff0c;帮助读者规划HTML5AI的学习与职业路径。通过本章学习&#xff0c;你将全面掌握"工具推荐&…...

别再乱配了!RuoYi-Vue-Plus中Sa-Token的activity-timeout与timeout到底啥区别?一个例子讲透

RuoYi-Vue-Plus中Sa-Token双超时机制&#xff1a;从业务场景到源码的深度实践 在基于Spring Boot的企业级开发中&#xff0c;会话管理一直是安全架构的核心环节。当我第一次在RuoYi-Vue-Plus项目中集成Sa-Token时&#xff0c;配置文件中那对看似相似的参数——activity-timeout…...

新手如何通过Taotoken控制台申请API Key并查看初始用量

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 新手如何通过Taotoken控制台申请API Key并查看初始用量 对于初次接触大模型API的开发者而言&#xff0c;第一步往往是如何获取一个…...

NV170D语音芯片在智能锁离线语音交互中的工程实践

1. 项目概述&#xff1a;当智能锁“开口说话”智能锁这东西&#xff0c;现在家里、公寓、办公室基本都普及了。从最早的密码、指纹&#xff0c;到现在的刷脸、手机NFC&#xff0c;解锁方式越来越花哨。但不知道你有没有过这样的体验&#xff1a;大晚上回家&#xff0c;楼道灯暗…...

【202期】新版VMware虚拟机汉化包

VMR虚拟机自从2025年被博通收购后&#xff0c;从新版开始官方就不再支持中文了。所以今天给各位找到了一个简体中文语言包&#xff0c;使用方式也是非常简单。解压与准备全部解压好之后&#xff0c;打开解压好的目录。执行汉化处理双击这个脚本文件进行汉化前的处理。复制到安装…...

CANN/hcomm集群信息初始化API

HcclCommInitClusterInfo 【免费下载链接】hcomm HCOMM&#xff08;Huawei Communication&#xff09;是HCCL的通信基础库&#xff0c;提供通信域以及通信资源的管理能力。 项目地址: https://gitcode.com/cann/hcomm 产品支持情况 Ascend 950PR/Ascend 950DT&#xff1…...

如何彻底解决IDM激活问题:开源脚本终极指南

如何彻底解决IDM激活问题&#xff1a;开源脚本终极指南 【免费下载链接】IDM-Activation-Script IDM Activation & Trail Reset Script 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script Internet Download Manager激活弹窗困扰着无数用户&#…...