1.问题描述

Scan Kit扫描专用底层码流接口需要鉴权,鉴权失败后功能还能用吗?

解决方案

如果已经申请过白名单,因为异常导致的鉴权失败会优先放通,保障业务成功。

2.问题描述

调用Scan Kit扫描专用底层码流接口会不会将二维码直接解出来?

解决方案

不会解析用户数据,Scan Kit接口只会检测二维码的位置,不会尝试去解码。

3.问题描述

自定义扫码界面的时候相机显示的画面变型,如何获取到一个合适的分辨率不变形?

解决方案

请参考文档:https://developer.huawei.com/consumer/cn/codelabsPortal/carddetails/tutorials_ScanKit-Codelab-Clientdemo-ArkTS。可通过监听组件onAreaChange方法获取手机屏幕宽高,您可以根据实际情况按百分比进行设计。

关键代码示例:

Column() {
XComponent({
id: 'componentId',
type: 'surface',
controller: this.mXComponentController
})
.onLoad(async () => {
hilog.info(0x0001, TAG, 'onLoad is called');
// 获取XComponent组件的surfaceId
this.surfaceId = this.mXComponentController.getXComponentSurfaceId();
hilog.info(0x0001, TAG, 'surfaceId: %{public}s', this.surfaceId)
let viewControl: customScan.ViewControl = {
width: this.cameraWidth,
height: this.cameraHeight,
surfaceId: this.surfaceId
};
// 扫码结果放置到回调中处理
try {
customScan.start(viewControl, this.callback);
this.isFlashLightEnable = true;
} catch (error) {
hilog.error(0x0001, TAG, 'start fail, error: %{public}s', JSON.stringify(error));
}
})
// XComponent宽、高、位置偏移量默认使用单位:vp
.width(this.cameraWidth)
.height(this.cameraHeight)
.position({ x: this.cameraOffsetX, y: this.cameraOffsetY })
}
.height('100%')
.width('100%')
.onAreaChange((oldValue: Area, newValue: Area) => {
// 获取当前组件宽高,newValue返回width、height值,单位vp,计算XComponent组件大小
hilog.info(0x0001, TAG, 'newValue : %{public}s, ', JSON.stringify(newValue));
this.calcArea(newValue.width as number, newValue.height as number);
})

【FAQ】HarmonyOS SDK 闭源开放能力 —Scan Kit的更多相关文章

  1. Linux开源系统对比Windows闭源系统的优势解析

    当我们听到linux的时候是不是觉得高大上的感觉呢?在我刚上大学的时候,听着学长们给我讲他们的大学的学习经历,先学习C语言.单片机.然后做一些项目,现在正学习linux操作系统,当我听到linux操作 ...

  2. Eureka 2.0 闭源--选择Consul???

    在上个月我们知道 Eureka 2.0 闭源了,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka 1.X 系列,另一方面 Spring Cloud 支持很多服务发现的软件,Eureka ...

  3. Eureka 2.0 闭源--选择Consul???[转]

    原文链接: https://www.cnblogs.com/williamjie/p/9369800.html 在上个月我们知道 Eureka 2.0 闭源了,但其实对国内的用户影响甚小,一方面国内大 ...

  4. 超简单集成HMS Scan Kit扫码SDK,轻松实现扫码购

    前言   在前面的文章中,我们向大家介绍了HMS Scan Kit 的快速集成方法以及HMS Scan Kit和其他开源扫码工具的竞争力对比分析,如果没有看到也没关系,文章下方的往期链接中有文章入口. ...

  5. Docker与k8s的恩怨情仇(四)-云原生时代的闭源落幕

    转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 在本系列前几篇文章中,我们介绍了从Cloud Foundry到Docker等PaaS平台的发展迭代过程.今天 ...

  6. 凉凉了,Eureka 宣布闭源,Spring Cloud 何去何从?

    今年 Dubbo 活了,并且被 Apache 收了.同时很不幸,Spring Cloud 下的 Netflix Eureka 组件项目居然宣布闭源了.. 已经从 Dubbo 迁移至 Spring Cl ...

  7. 第一部分:开发前的准备-第八章 Android SDK与源码下载

    第8章 Android SDK与源码下载 如果你是新下载的SDK,请阅读一下步骤了解如何设置SDK.如果你已经下载使用过SDK,那么你应该使用AVD Manager,来更新即可. 下面是构建Andro ...

  8. Ubuntu 16.04安装GTX960闭源驱动

    GTX960的闭源要Nvidia 346版才行,闭源驱动能很大提升显卡的性能,例如双显示输出等,缺点是不开源. 有以下方式来安装: 1.命令行: sudo add-apt-repository -y ...

  9. 小D课堂 - 新版本微服务springcloud+Docker教程_3-04 SpringCloud微服务核心组件Eureka介绍和闭源后影响

    笔记 4.SpringCloud微服务核心组件Eureka介绍和闭源后影响     简介:         SpringCloud体系介绍             官方地址:http://projec ...

  10. deepin20 安装英伟达闭源驱动

    第一步.安装深度的"显卡驱动器" 在deepin v20 中默认没有显卡驱动管理器,需要命令行安装,命令如下(刚开始一直出错,当我第一次打开应用商店,就可以安装了,好神奇): su ...

随机推荐

  1. 面试官:说说SSO单点登录的实现原理?

    单点登录(Single Sign-On, SSO)是一种让用户在多个应用系统之间只需登录一次就可以访问所有授权系统的机制.单点登录主要目的是为了提高用户体验并简化安全管理. 举个例子,您在一个大型企业 ...

  2. 在Avalonia项目中使用MediatR和MS.DI库实现事件驱动通信

    大家好,我是沙漠尽头的狼! AvaloniaUI是一个强大的跨平台.NET客户端开发框架,让开发者能够针对Windows.Linux.macOS.Android和iOS等多个平台构建应用程序.在构建复 ...

  3. 使用 Abp.Zero 搭建第三方登录模块(四):微信小程序开发

    ​简短回顾一下微信小程序端的流程: 用户通过扫码进入小程序的鉴权页面,更新状态到ACCESSED已扫码 用户点击确认授权,微信通过wx.login()接口获取第三方登录的必要信息:Code登录凭证. ...

  4. 将Maven和Plugins的源都改为阿里镜像的Setting.xml

    <?xml version="1.0" encoding="UTF-8"?> <!-- Licensed to the Apache Soft ...

  5. UDP、IMCP、ARP协议通过netmap解析的实现。

    上一篇文章我们讲了一个异步的线程池大概需要如何去实现,现在的话,我们如何来解析一个UDP的包. 环境的搭配 这个环境的问题困扰了很久,这个netmap已经不再更新了,支持Ubuntu16.04-Ubu ...

  6. maven问题之Could not calculate build plan:

    问题描述: Could not calculate build plan: Failure to transfer org.apache.maven.plugins:maven-surefire-pl ...

  7. C++类的访问权限

    首先明确一个类的用户有三种: 一类用户:类的成员和友元 二类用户:子类的成员及子类的友元 三类用户:外部的用户代码(通过类的对象或指针) 一个类有三种成员 private:只有一类用户可以访问priv ...

  8. Android线程池封装库

    目录介绍 1.遇到的问题和需求 1.1 遇到的问题有哪些 1.2 遇到的需求 1.3 多线程通过实现Runnable弊端 1.4 为什么要用线程池 2.封装库具有的功能 2.1 常用的功能 3.封装库 ...

  9. 记录--Object.assign 这算是深拷贝吗

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 在JavaScript中,Object.assign() 是一个用于合并对象属性的常见方法.然而,对于许多开发者来说,关于它是否执行深拷贝 ...

  10. 记录--你真的能区分JavaScript的各种导入导出方式吗?

    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前言 我们在无论是在查阅别人的代码,还是在实际项目开发的过程中,肯定都会使用导入导出的功能,有时候我们会搞混这几种方式到底有什么区别,今天 ...