android - TC52、Android 8.1 上的 RhoMobile:“DS8178 蓝牙扫描仪未连接......”
问题描述
我正在尝试让现有的 RhoMobile APK 在 TC52、Android 8.1 上运行。该应用程序在 TC51、Android 6 上运行良好。在 TC52 上,当我启动应用程序时,我收到一条祝酒消息
DS8178 Bluetooth Scanner is not connected, therefor BTPairing Utility will be started.
问题是 - 忽略 BTPairing Utility App(我也尝试禁用它) - 我无法在我的 rho 移动应用程序中使用内置扫描仪。当我尝试使用它时,我在日志中看到以下消息
“ decodeSound 条码属性只能在扫描仪完成初始化后设置”
查看底层代码,扫描仪似乎尚未初始化,可能是由于无法配对蓝牙扫描仪。但是现在有这样的扫描仪,而且永远不会有。有人知道如何禁用此行为吗?
编辑 1:这是我用于启用扫描仪的 javascript 代码
Rho.Barcode.enable({ allDecoders: true }, this.onScan);
但是,我认为它发生在访问 javascript 之前;该应用程序托管在网络服务器上;即使我禁用 WIFI 并启动应用程序,也会显示吐司。似乎 RhoMobile 正在尝试设置所有已知的扫描仪。
编辑 2:当我枚举所有扫描仪时,我按此顺序获取这些扫描仪
Scanners found: '[
"Camera Scanner",
"2D Barcode Imager",
"Bluetooth Scanner",
"RS6000 Bluetooth Scanner",
"DS3678 Bluetooth Scanner",
"LI3678 Bluetooth Scanner",
"DS2278 Bluetooth Scanner",
"DS8178 Bluetooth Scanner"]'
Default scanner: '2D Barcode Imager'
默认扫描仪由
Rho.Barcode.getProperty("friendlyName");
编辑3:好的,正如评论中所建议的,使用从枚举返回的实际实例;触发扫描仪按钮效果很好。
剩下的是要求连接的吐司DS8178 Bluetooth Scanner
;有没有办法从 config.xml 禁用扫描仪?
解决方案
这个错误:
DS8178 蓝牙扫描仪未连接,因此 BTpairing Utility 将启动。
不是来自 RhoMobile,它是从低级扫描框架生成的。我检查了一个更新的设备,我很高兴地说他们修复了拼写错误。当某些东西(EMDK 或 DataWedge)试图启用 DS8178 扫描仪时会导致此问题。DS 扫描仪支持仅在最近版本的移动计算扫描仪框架中添加,因此可能解释了您在 TC51 和 TC52 之间看到的行为差异。
RhoMobile(在 Zebra Android 设备上)包装 EMDK 并将每个受支持的扫描仪公开为单独的 Barcode 对象,您可以在 enumerate 返回的数组中看到所有这些。奇怪的是,在您进行第二次编辑时,默认扫描仪是“2D Barcode Imager”。
有几个选项/可能性:
- RhoMobile 框架中存在错误,并且由于某种原因正在启用 DS8178 扫描仪。我检查了https://github.com/rhomobile/rhodes/tree/master/lib/commonAPI/barcode/ext/platform/android/src/com/rho/barcode并且看不到任何此类错误。Rho 是开源的,但如果你想探索这条路线,它会得到 Tau-Technologies 的支持。
- 您设备上的其他东西正在启用 DS8178 扫描仪,例如 DataWedge 配置文件或使用 EMDK 的其他应用程序。您可以禁用 DataWedge(从 DataWedge 应用程序设置)并重新启动设备以进行测试。
- TC52 有问题。我会说这是最不可能的,因为我从未听说过类似的问题
无法通过 XML 禁用任何扫描仪
推荐阅读
- python - 使用 df.apply 和 lambda 函数将多列添加到数据框
- ansible-inventory - 从控制主机到自身的 Ansible SSH ERROR 连接(到控制主机)
- c# - 动态调用
对象类 - tensorflow - 即使训练损失小于 0.01,Mask rcnn 的 mAP 也小于 1%
- c# - linux上的syncfusion pdf压缩更改图像颜色
- python - 使用 Python 从垃圾标签重新格式化 XML 数据
- javascript - 提交表单而不上传图片
- python - 将点积应用于多索引熊猫数据框成员的矢量化解决方案
- python - 我的问题有什么不同的方法?
- node.js - 在循环中重用准备好的语句 node-js mssql