符号口袋浏览器和解码FNC1字符



我有一个基于servlet的web应用程序,它为在客户网站上运行的摩托罗拉RF条形码扫描仪提供网页,这些扫描仪仍在使用Symbol Pocket Browser,而不是最新的Enterprise Browser。我无法控制。

多年来,该应用程序一直运行良好,因为它只需要使用EAN128条形码规则扫描一个20位数字字符串。

我在html中使用元命令,这样当用户扫描数据时,解码的值就会输入到屏幕上的活动输入框中,然后执行自动输入。所有这些都很好。

我现在需要扫描一个更复杂的EAN-128条形码,其中有多个应用程序标识符,最重要的是其中一个字段是可变长度的,以FNC1字符结束。当SPB扫描此条形码时,返回的数据没有任何字段分隔符,因此无法正确解码数据。

我现在在网上能找到的只是RhoElements和最新的企业浏览器的文档,我看不出有什么方法可以在不丢失重要分隔符的情况下读取数据。

我认为在解码数据时让它运行一些javascript是可能的,也许可以将数据保存在servlet可以访问的会话变量中,但我是盲目工作的。

有没有人遇到过这种情况,可以提供有效的示例html/javascript,或者可能提供SPB文档(编程指南)的链接?

您仍然可以从斑马技术支持网站下载PocketBrowser v3.x(斑马技术于2014年10月收购了摩托罗拉Solution Enterprise Business)。

下载包包括一个PocketBrowser指南。

我们强烈建议现有用户升级到支持更新操作系统和设备的企业浏览器,尽可能与现有Symbol、Motorola、Zebra设备保持兼容性。

对于"Symbol Pocket Browser v2.x",您可以使用"scannernavigation"META标签,当扫描仪或成像器成功解码条形码或符号时,该标签会导航到URL或调用JavaScript函数。

以下示例设置页面上的扫描仪,以便在成功解码时调用JavaScript函数:

<META HTTP-Equiv="scanner" Content="enabled">
<META HTTP-Equiv="scannernavigate" Content="javascript:doScan('%s', '%s', %s, '%s', %s);">
<script>
function doScan(data, source, type, time, length)
{
if(type == 0x35) //ean 13
{
alert('Please scan a non EAN 13 code!');
}
else
{
var amount = prompt('Enter an amount for code: ' + data', '');
}
}
</script>

免责声明:我在斑马科技公司工作

更新的答案涵盖Symbol Pocket Browser v2.x语法

相关内容

  • 没有找到相关文章

最新更新