关于sap:SAP-UI5-barcode-控件的-feature-检查探测机制单步调试-checkCordovaInIframe

2次阅读

共计 1136 个字符,预计需要花费 3 分钟才能阅读完成。

第 170 行 checkCordovaInIframe 是检测 Cordova API 在 iframe 里的可用性,这里能够疏忽。

oCordovaScannerAPI 默认为 null.

进入 getFeatureAPI 分支:

这里试图从 cordova.plugins.barcodeScanner 获取 oCordovaScannerAPI.
因为我没有装置,所以这个 API 不可用:

进入异样处理函数,进行 getZXingAPI 的 fallback 解决:

Kapsel 是一组插件,可通过简化登录到 SMP 3.0 服务器、OData 调用的离线拜访、更新已部署应用程序的能力、加密存储和推送告诉等性能来加强 Apache Cordova。

SAP Fiori Client 围绕 Apache Cordova 架构设计,其中设施 API 和自定义性能通过插件增加。

下表显示了 SAP Fiori Client 1.8(iOS、Android 和 Windows)中蕴含的插件。

如果开发人员应用 SAP Mobile Platform SDK(仅限 iOS 和 Android)随附的 create_fiori_client.js 脚本构建自定义 SAP Fiori 客户端,这些插件会主动增加到我的项目中。

要在实用于 Windows 10 的自定义 SAP Fiori 客户端中应用 Cordova 插件,您必须在插件和实用于 Windows 10 的自定义 Fiori 客户端之间创立一个 API 桥。

在 Windows 上,Cordova 应用程序基本上是一个 HTML5 应用程序。因而,应用程序没有原生端,并且没有任何货色在 index.html 层下运行。插件中的 Windows 特定代码是用 JavaScript 编写的,并与跨平台 JavaScript API 作为代理 API 一起初始化。

对于 SAP Fiori 客户端,index.html 页面是本机端容器。它包含 cordova.js 并初始化 Cordova 插件。index.html 中有一个 webview 元素 (x-ms-webview),它关上了近程 Fiori 应用程序。

index.html 页面和近程 Fiori 应用程序(webview 中的网页)是两个齐全不同的上下文,具备不同的 DOM 和 窗口”对 。一个上下文无法访问另一个上下文的命名空间。因而,无奈间接从 webview 拜访本地上下文中先前初始化的插件。

这个问题在其余平台上通过将 cordova.js 注入近程网页(在主原生 web 视图中关上)、初始化 JavaScript Cordova API 并取得对曾经初始化的原生端的拜访来解决。

在 Windows 上将 Cordova 注入近程 Fiori 应用程序是不可能的,因为出于平安起因,不容许近程页面拜访某些 Windows API。这意味着 Fiori 应用程序无法访问任何 Cordova 插件。

正文完
 0