需要从另一个应用程序运行EB.BARCODE函数

问题描述

我们需要从另一个应用程序运行EB.barcode函数。为了测试这一点,我们构建了Zebra提供的教程,barcode.html,其中引用了ebapi-modules.js。我们将其放在名为ZebraScanner的文件夹中-仅是这两个文件

将此文件夹放置在/Android/data/com.symbol.enterprisebrowser文件夹中后-修改Config.xml文件以将Barcode.html设置为起始页-可以正常工作。

将此文件夹放置在/ Download文件夹中时。此弹出窗口出现:

{"method":"getDefaultID","params":
[],"_rhoClass":"Rho.Barcode","_rhoID
":"0","jsonrpc":"2.0","id":1}

_rhoNativeApiCall:prompt

解决方法

您只能在Zebra的企业浏览器中运行EB.Barcode函数。该产品公开的Web视图公开了执行addJavaScriptInterface中的逻辑所需的几个ebapi-modules.js调用,因此为什么您看到该错误。如果您尝试从其他浏览器(例如Chrome或FireFox)中进行扫描,那么一个很好的方法是将DataWedge与KeyPress结合使用,并且有一篇文章介绍了如何在https://developer.zebra.com/blog/listening-keypress-events-datawedge

上进行操作