SAP UI5 BarcodeScannerButton 的初始化逻辑 - feature 检测,Cordova API 检测等逻辑

简介: SAP UI5 BarcodeScannerButton 的初始化逻辑 - feature 检测,Cordova API 检测等逻辑

sap.ndc.BarcodeScannerButton:用于启动条码扫描过程的按钮控件(显示条码图标)。 如果本机扫描功能不可用或未授予相机功能,则该按钮要么被隐藏,要么通过打开带有输入字段的对话框来提供后备,可以在其中手动输入条形码。BarcodeScanner 被加载之后,执行 init 方法:


  //  * Feature vector (sap.Settings.isFeatureEnabled) is available
  //  * Barcode scanner is enabled by the Feature Vector
  //  * Barcode scanner Cordova plug-in (cordova.plugins.barcodeScanner) or zxing-js (ZXing.BrowserMultiFormatReader) is available

available 属性默认为 true:

native device capabilities should be by default enabled if there is no feature vector available to restrict the capability.

浏览器里检测不到 cordova API:

然后尝试获取 ZXingAPI. 这是一个异步过程。

oZXingScannerAPI 可用。

点击 barcode 按钮之后,执行下图第 129 行代码的 scan 方法。


如果条码扫描功能不可用,则启动条码扫描过程,显示来自摄像头的实时输入或显示对话框以直接输入值。


条码扫描是异步完成的。 当它被触发时,该函数返回而不等待扫描过程完成。 应用程序必须提供回调函数来对成功扫描、扫描期间的错误以及对话框上的实时输入事件做出反应。


fnSuccess 传递了一个具有文本、格式和取消属性的对象。 text 是条码数据的文本表示,format 是检测到的条码类型,cancel 是用户是否取消扫描。 fnError 给出了错误,fnLiveUpdate 被传递了在对话框的输入字段中输入的新值。


只有当 CordovaScannerAPI 可用时,才进入 584 行下面的分支:

否则进入 618 行,弹出对话框。

SAP Fiori Client 是 SAP Fiori 应用程序的原生移动应用程序运行时容器。 SAP Fiori Client 允许用户以在线模式访问其 SAP Fiori 应用程序。后续我会介绍如何在 Fiori client 里解决这个 cordova 插件不可用的问题。

相关文章
|
2月前
|
存储 数据管理 数据处理
SAP CRM 里 Attachment 搜索的实现逻辑介绍
SAP CRM 里 Attachment 搜索的实现逻辑介绍
21 0
|
4月前
|
数据采集 供应链 数据管理
关于评估 SAP 主数据的数据初始化对 SAP 系统影响范围的方法论
关于评估 SAP 主数据的数据初始化对 SAP 系统影响范围的方法论
42 0
|
23天前
|
Java BI API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
SAP Cloud for Customer 里如何通过 ABSL 二次开发方式消费 SAP S/4HANA 系统的 API
15 0
|
2月前
|
BI 数据库
SAP ABAP ALV 报表单击某列后执行某段 ABAP 逻辑的实现方式 - hotspot 行为实现试读版
SAP ABAP ALV 报表单击某列后执行某段 ABAP 逻辑的实现方式 - hotspot 行为实现试读版
27 0
|
4月前
|
供应链 数据挖掘 API
和 SAP 系统单点登录 MYSAPSSO2 相关的一些配置和 API
和 SAP 系统单点登录 MYSAPSSO2 相关的一些配置和 API
28 0
|
4月前
|
API
SAP Fiori Elements 针对 OData V2 和 V4 的 Extension API
SAP Fiori Elements 针对 OData V2 和 V4 的 Extension API
27 0
|
5月前
|
人工智能 API 开发工具
【Python+百度API】实现人脸识别和颜值检测系统(包括人脸数量、年龄、颜值评分、性别、种族、表情检测)(超详细 附源码)
【Python+百度API】实现人脸识别和颜值检测系统(包括人脸数量、年龄、颜值评分、性别、种族、表情检测)(超详细 附源码)
112 0
|
7月前
|
缓存 索引
SAP ABAP 系统传输请求(Transport Request)导入到其他系统背后执行的逻辑
SAP ABAP 系统传输请求(Transport Request)导入到其他系统背后执行的逻辑
94 0
|
7月前
|
XML API 数据格式
关于使用 SAP CPI 暴露 S/4HANA SalesOrder API 引起的一个错误问题分析
关于使用 SAP CPI 暴露 S/4HANA SalesOrder API 引起的一个错误问题分析
56 0
|
7月前
|
存储 前端开发 API
SAP Commerce Cloud 里的 smartedit webservices OCC API
SAP Commerce Cloud 里的 smartedit webservices OCC API
24 0