通过Android版Fiori Client使用条形码扫描仪的Fiori应用程序无法启动

2020-09-14 00:15发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我制作了一个演示Fiori应用程序,以尝试使用Fiori Client应用程序进行条形码扫描仪。 我想使其在Android和iOS上均可使用。

在iPhone上,它可以正常工作。

在Android手机上,该应用程序无法启动。 我收到一条消息,指出"无法启动该应用程序。请稍后再试。"

这是一个使用" SAPUI5应用程序"模板制作的应用程序。

它已部署在高效的SAP Cloud Platform环境中,并可以通过Fiori Launchpad访问。

这是我对代码所做的唯一更改:

webapp \ controller \ View1.controller.js

 jQuery.sap.require(" sap.ndc.BarcodeScanner");
 sap.ui.define([
 " sap/ui/core/mvc/Controller"
 ],函数(控制器){
 "使用严格";
 返回Controller.extend(" com.company.barcodescanner.BarcodeScannerApp.controller.View1",{
 onPress:function(oEvent){
 sap.ndc.BarcodeScanner.scan(
 函数(mResult){
 警报("我们收到了条形码\ n" +
 "结果:" + mResult.text +" \ n" +
 "格式:" + mResult.format +" \ n" +
 "已取消:" + mResult.cancelled);
 },
 函数(错误){
 alert("扫描失败:" +错误);
 },
 );
 }
 });
 });
  

webapp \ view \ View1.xml

 
 
 <页面>
 
 <内容>
 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我制作了一个演示Fiori应用程序,以尝试使用Fiori Client应用程序进行条形码扫描仪。 我想使其在Android和iOS上均可使用。

在iPhone上,它可以正常工作。

在Android手机上,该应用程序无法启动。 我收到一条消息,指出"无法启动该应用程序。请稍后再试。"

这是一个使用" SAPUI5应用程序"模板制作的应用程序。

它已部署在高效的SAP Cloud Platform环境中,并可以通过Fiori Launchpad访问。

这是我对代码所做的唯一更改:

webapp \ controller \ View1.controller.js

 jQuery.sap.require(" sap.ndc.BarcodeScanner");
 sap.ui.define([
 " sap/ui/core/mvc/Controller"
 ],函数(控制器){
 "使用严格";
 返回Controller.extend(" com.company.barcodescanner.BarcodeScannerApp.controller.View1",{
 onPress:function(oEvent){
 sap.ndc.BarcodeScanner.scan(
 函数(mResult){
 警报("我们收到了条形码\ n" +
 "结果:" + mResult.text +" \ n" +
 "格式:" + mResult.format +" \ n" +
 "已取消:" + mResult.cancelled);
 },
 函数(错误){
 alert("扫描失败:" +错误);
 },
 );
 }
 });
 });
  

webapp \ view \ View1.xml

 
 
 <页面>
 
 <内容>
 
付费偷看设置
发送
2条回答
宇峰Kouji
1楼 · 2020-09-14 00:48.采纳回答

答案比我想象的要简单:存在语法错误。

我意识到sap.ndc.BarcodeScanner的文档非常有用: https://sapui5.hana.ondemand.com/#/api/sap.ndc.BarcodeScanner/overview

函数定义后还有一个逗号。 这是正确的controller1.js:

 jQuery.sap.require(" sap.ndc.BarcodeScanner");
 sap.ui.define([
 " sap/ui/core/mvc/Controller"
 ],函数(控制器){
 "使用严格";

 返回Controller.extend(" com.cascades.u362dlac.barcodescanner.u362dlacBarcodeScanner.controller.View1",{
 onPress:function(oEvent){
 sap.ndc.BarcodeScanner.scan(
 函数(mResult){
 警报("我们收到了条形码\ n" +
 "结果:" + mResult.text +" \ n" +
 "格式:" + mResult.format +" \ n" +
 "已取消:" + mResult.cancelled);
 },
 函数(错误){
 alert("扫描失败:" +错误);
 }(<-多余的逗号在这里)
 );
 }
 });
 }); 

为什么它在iPhone上而不在Android上运行? 好吧,我发现在iPhone上它只能工作一次,所以这意味着在iPhone上,该代码随即进行了验证;而在Android上,该代码在执行之前就经过了验证。

haha101010
2楼-- · 2020-09-14 00:39

您已经测试了示例代码 ?

一周热门 更多>