SAP|SAP UI5 barcode 控件的 feature 检查探测机制单步调试 - checkCordovaInIframe
第 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 并获得对已经初始化的原生端的访问来解决。
【SAP|SAP UI5 barcode 控件的 feature 检查探测机制单步调试 - checkCordovaInIframe】在 Windows 上将 Cordova 注入远程 Fiori 应用程序是不可能的,因为出于安全原因,不允许远程页面访问某些 Windows API。这意味着 Fiori 应用程序无法访问任何 Cordova 插件。
推荐阅读
- 如何使用|如何使用 SAP UI5 的标准控件结合 Cordova 插件调用手机摄像头进行条形码扫描试读版
- SAP|SAP UI5 BarcodeScannerButton 的初始化逻辑 - Cordova API 检测等逻辑
- 如何使用|如何使用 Chrome 调试运行在手机上的 SAP UI5 Cordova 混合应用试读版
- 不借助|不借助 Fiori client,直接在手机浏览器里调用 SAP UI5 BarcodeScanner 实现条形码扫描的可能性()
- SAP|SAP UI5 BarcodeScannerButton feature 检测,Cordova API 检测等逻辑
- 如何使用|如何使用 Cordova 将 SAP UI5 应用生成一个能在 Android 手机上安装的混合应用试读版
- SAP|SAP UI5 应用开发教程之四十八 - 如何在 SAP UI5 应用里开发条形码扫描功能试读版
- SAP|SAP 电商云 Spartacus UI 和 CPQ Configurable Products 的集成
- 如何在桌面电脑端调试运行在手机上的|如何在桌面电脑端调试运行在手机上的 SAP UI5 应用试读版
- SAP|SAP UI5 应用开发教程之四十七 - 如何自定义 SAP UI5 字符串类型输入字段的校验逻辑试读版