我希望从任何从事过霍尼韦尔 Dolphin 设备的人那里得到一些帮助。我正在为多设备开发 Android 条码/二维码扫描应用程序,主要设备是 Dolphin 设备。(例如海豚 70e 黑色)
但是为了获得在所有手机之间完全兼容的应用程序,我想以编程方式检测运行应用程序的设备是否具有带有 android sdk 的激光扫描仪,否则该应用程序使用设备上的相机进行扫描。
我的问题是我没有在网络和霍尼韦尔的文档上找到帮助。
如果有人可以帮助我,那将非常酷!
我编写了一个 Angular 应用程序,其目的是一个移动仓库管理系统。该应用程序主要用于带有集成条形码扫描仪的移动计算机。它们是霍尼韦尔 TC60。该设备安装了 Android 8 操作系统和 Chrome。霍尼韦尔设备附带可以用 JavaScript 实现的条形码 API。它在端口 8080 上进行回调。
前几天,我注意到 Web 控制台中出现了来自 Chrome 的错误:[弃用] 该网站从网络请求了一个子资源,由于其用户的特权网络位置,该网站只能访问该子资源。这些请求将非公共设备和服务器暴露在互联网上,增加了跨站点请求伪造 (CSRF) 攻击和/或信息泄露的风险。为了减轻这些风险,Chrome 不赞成从非安全上下文发起对非公共子资源的请求,并将在 Chrome 92(2021 年 7 月)中开始阻止这些请求。有关更多详细信息,请参阅https://chromestatus.com/feature/5436853517811712 。
如果我理解正确的话,到 7 月份,集成条形码扫描仪 API 将变得毫无用处,公司将有数千美元的设备将不再与集成扫描仪 API 一起使用。请求是从使用公共安全域的设备向私有 IP 发出的,但它是本地主机。您不会认为 localhost 可能存在漏洞。因为实际上没有拨打外部电话。
我不确定这个有针对性的“功能”是否会破坏我的扫描仪。我应该假设它会吗?设备上没有选项要求安全的本地连接,如果这有意义的话。
我正在开发一个Web应用程序,该应用程序必须在运行Android 4.4的Honeywell Dolphin 75e设备上使用。集成的条形码读取器可以在“键盘楔形”模式下运行,但仅在文本字段具有焦点时才可以。
在桌面浏览器中,我可以使用该代码捕获条形码读取器事件:
var BarcodesScanner = {
barcodeData: '',
deviceId: '',
symbology: '',
timestamp: 0,
dataLength: 0
};
function onScannerNavigate(barcodeData, deviceId, symbology, timestamp, dataLength){
BarcodesScanner.barcodeData = barcodeData;
BarcodesScanner.deviceId = deviceId;
BarcodesScanner.symbology = symbology;
BarcodesScanner.timestamp = timestamp;
BarcodesScanner.dataLength = dataLength;
$(BarcodesScanner).trigger('scan');
}
BarcodesScanner.tmpTimestamp = 0;
BarcodesScanner.tmpData = '';
$(document).on('keypress', function(e){
e.stopPropagation();
var keycode = (e.keyCode ? e.keyCode : e.which);
if (BarcodesScanner.tmpTimestamp < Date.now() - 500){
BarcodesScanner.tmpData = '';
BarcodesScanner.tmpTimestamp = Date.now();
}
if (keycode == 13 && BarcodesScanner.tmpData.length > …
Run Code Online (Sandbox Code Playgroud)