云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

天翼云_国内vps云主机_企业级

小七 141 0

远程云主机_如何使用_云主机可以玩游戏吗

这是一个客户和SAP社区经常提出的问题:

我们如何在Fiori应用程序中实现QR扫描仪?我们需要使用cordova插件吗?我们需要做一个混合应用程序吗?

答案很简单,这可以在Fiori中完成,不需要cordova插件,也不需要使其混合。

在过去,不可能从所有移动设备上的web应用程序直接使用相机。对于Android手机来说,这已经有一段时间的可能了。另一方面,iOS设备必须等到iOS 11。尽管这是几年前发布的,但我不确定每个人都知道这意味着iOS支持WebRTC。这也意味着,您可以在Safari中直接使用手机的摄像头:)。无需与Cordova插件和混合应用程序抗争

有关iOS支持WebRTC的更多信息:

https://flashphoner.com/ios-safari-11-now-supports-webrtc/

我在fiori应用程序中创建了QR扫描仪的演示应用程序。这里有一个关于它如何工作的视频。

如果我的试用帐户仍然有效,您可以在这里自己试用:https://2d32c6fatrial-workspaces-ws-w6zlm-app2.eu10.trial.applicationstudio.cloud.sap/bewlScannerApp/index.html

演示应用程序允许您:

选择任何可用的相机是否镜像摄像头扫描二维码

首先,我不是自己实现的吗?为此,bi大数据分析,我使用了一个非常好且易于使用的库:Instascan。有关该库的更多信息,请访问:https://github.com/schmich/instascan

这个图书馆的问题是没有得到很好的维护。当您查看pull请求时,您会注意到许多未合并的pull请求。其中一些包含iOS修复程序…因此,我从这个拉取请求开始:https://github.com/CoyoteLeo/instascan

在Instascan旁边,我还使用了一个WebRTC适配器库:https://github.com/webrtc/adapter

此库将处理不同浏览器中WebRTC实现的差异。您必须保持此库的最新状态,以防浏览器更新WebRTC实现。

我为QR扫描仪创建了一个带有UI5控件的UI5库。为此,我将istanscan和webrtc库添加到我的UI5库中,以便在我的UI5控件中使用它们。

UI5 QR Scanner控件的呈现器非常基本,它包含一个工具栏,带有:

一个下拉列表,返利手游平台,内部优惠券,用于在有多个摄像头(手机前后)的情况下切换摄像头启用或禁用镜像的按钮

(工具栏是在实现代码的init函数中用UI5控件创建的)

在工具栏后面是用于显示相机的视频html标记

渲染器函数正在使用新的控件api:

在控件的"onAfterRendering"函数中,理财返利,我使用Instascan库。这也是我将其绑定到renderer函数中的"video"标记的地方。我在"getDomRef"中使用"lastElementChild",因为我将它与工具栏包装在一个div中,它是该div中的最后一个元素。

接下来,代码将分配一个eventhandler来处理扫描的对象。它还将获得可用的摄像头,将其添加到dropdownlist。

最后但并非最不重要的一点,它将使用它能找到的第一个启动扫描仪。

在处理扫描对象的eventhandler中,我更新属性"value"以更新绑定并触发事件,以便在视图/控制器中捕获它:

选择另一个摄像头时在下拉列表中,它将在新选择的相机上启动扫描仪。为此,我在控件中实现了以下事件处理程序:

根据您使用的相机,可能需要启用或禁用镜像。如果使用手机的后置摄像头,则无需镜像即可。如果使用前置摄像头,可以考虑使用镜像。为此,我在工具栏中添加了一个开关,它将更改镜像属性:

GitHub上提供完整的项目:https://github.com/lemaiwo/UI5QRScannerApp

这是一个mta,包含带UI5 QR扫描仪控件的UI5库和一个UI5演示应用程序。

带UI5 QR的UI5库扫描仪:

https://github.com/lemaiwo/UI5QRScannerApp/tree/master/ScannerAppLibrary

以UI5演示应用程序为例如何在UI5应用程序中使用此UI5 QR扫描仪控件:

https://github.com/lemaiwo/UI5QRScannerApp/tree/master/ScannerApp

您可以将整个项目克隆到Business Application Studio(BAS)中,并在BAS或将其部署到CF并使用中央审批器运行它。为了支持我的BAS库和中央应用程序,我在组件.js:

(我知道这不是最好的方法,但是在清单中添加库与resourceroots结合可以使它在BAS或中央审批器中工作。两个审批者(BAS和Central)生成不同的url。出于这个原因,我采用"丑陋"的方式,通过在组件.js. 如果在BAS中运行,则从BAS中提供的路径加载库,否则使用Cetnral批准者提供的路径。欢迎您提供任何改进意见!)

在BAS中运行时,返利怎么使用,您还需要将配置更改为以下内容:

请仔细观察"模拟查找目录"。这已经扩展到查找库的"src"文件夹:

在试用帐户上,HTML5应用程序repo还不可见(至少在我的帐户中…),但您可以使用以下命令找到部署到中央审批者的应用程序列表: