找回密码
 立即注册

QQ登录

只需一步,快速开始

willning
超级版主   /  发表于:2022-9-7 14:05  /   查看:18854  /  回复:0
本帖最后由 willning 于 2024-12-17 09:29 编辑

活字格PDA解决方案可以帮助开发者适配运行Android系统的PDA,通过调用硬件(如扫描头、GPS、蓝牙打印机、NFC等)的能力,进一步提升最终用户的使用体验。


安装包

系统架构
解决方案由活字格安卓容器(HAC)APP和PDA交互命令插件构成。

HAC架构简图 (1).png746548156.png

使用方法
使用该解决方案无需具备任何编码开发能力。

  • 开发者在活字格设计器上安装【PDA交互命令】插件
  • 开发者在开发应用时,使用该插件提供的功能
  • 开发者将应用发布到活字格云或私有化部署的服务器
  • IT在Chrome浏览器中打开配置码生成器,输入步骤3中发布的应用的URL地址,以及其他配置信息,生成配置码并将其导出为PDF
  • IT在PDA上安装HAC(应用名:业务平台)
  • IT打开HAC,点击扫码图标,扫描步骤4生成的PDF文件中的二维码
  • 确认无误后,将PDA交给业务人员使用

典型厂商的扫描头广播名称和键值(默认值,用户或管理员可能做过修改)
注意:需要在厂商提供的设置程序中,将扫码模式修改为“广播”或“Intent”,才能正常使用。扫描头和UHF的广播通常需要在不同的APP中单独配置。以优博讯的DT50U为例,RFID在【RFIDWedge】应用中配置,扫描头在【设置】APP中“扫描设置”菜单里配置。如果遇到困难,请联系设备厂商寻求技术支持。
厂商广播名称(Action)广播键值(Extra)
东大集成(Q9等老产品,扫描头) com.android.server.scanscannerdata
东大集成(小码哥等新产品,扫描头/UHF) 配置教程 com.android.server.scannerservice.broadcastscannerdata
优博讯(扫描头) android.intent.ACTION_DECODE_DATAbarcode_string
优博讯(UHF) com.ubx.scan.rfidrfid_data
盈达iData android.intent.action.SCANRESULTvalue
成为(扫描头) com.scanner.broadcastdata
成为(UHF) com.rscja.scanner.action.scanner.RFIDdata
商米 com.sunmi.scanner.ACTION_DATA_CODE_RECEIVEDdata
* 更多设备厂商的数据待补充

兼容性测试
除了常见的Android手机,我们使用一些主流PDA设备进行兼容性测试,结果如下表所示。

设备型号基础功能 照片上传文件上传 摄像头扫码 扫描头扫码 RFID扫码
东大集成 Q9/Q9C/Q7/小码哥A/小码哥5G/UTOUCH/UTOUCH2√(仅UTouch/UTOUCH2)
优博讯 DT40/DT50/DT50U(Android 11)√(DT50U)
盈达 P50/iData50(Android 9)
成为 C72(Android 11)

蓝牙打印机的兼容性测试结果:
  • 德佟 DP30:OK(德佟方案)
  • 佳博的GP-M322:OK(ESC方案)


实用教程


扩展开发

如需基于本方案开发或集成更多能力,或者其他个性化配置,可以基于我们提供的源代码进一步开发。
  • HAC:源代码 (考虑到部分依赖项仅保存在JCenter,HAC需在Gradle 8.0中编译,兼容JDK版本17,设置Android Studio的GradleJDK版本
  • PDA交互命令插件:源代码 (Visual Studio 2022)

常见问题
Q:方案仅能用在PDA上吗,可以在手机上使用吗?
A:HAC是Android的原生应用,在版本不低于8.0,运行内存不低于2GB的Android设备上均可运行。考虑到内置对Android应用的支持,鸿蒙OS上也可以安装使用HAC。
Q:HAC和官方的Android APP有什么区别?
A:在执行效果上,两者差异不大,均可以用来“打包”使用活字格开发的Web应用。在技术上,HAC采用Java开发,开放源代码。开发者无需掌握ReactNative框架,只要会Java和Android原生APP开发就可以接手进行扩展开发,最大化利用Android开发生态中的各类资源和开源类库。
Q:我可以直接在HAC中展示PC端页面吗?
A:如果使用的终端是主流的平板电脑或高性能手机,这样做是可以的。但是,使用Cortex-A53低功耗CPU的PDA的处理能力通常远低于手机,您需要在开发时做好性能优化,这意味着PDA的页面设计与其他设备不同,具体方式请参考 最佳实践
Q:我可以定制应用的名称和图标吗?
A:可以,但这个事情需要一定的动手能力。具体可参考这个教程:https://gcdn.grapecity.com.cn/showtopic-160362-1-1.html
Q:一台PDA上可以安装两个HAC吗?
A:不能。你需要获取源代码,修改包名、图标、应用名称等信息后分别打包成不同的应用后安装。
Q:我可以将应用的首页地址和扫描器的参数内置进APP,无需配置,开箱即用吗?
A:可以。你需要做的事情是从码云获取HAC的最新代码,修改strings.xml中app_default_entry、feature_scanner_broadcast_name、feature_scanner_extra_key_barcode_broadcast、feature_uhf_broadcast_name、feature_uhf_extra_key_barcode_broadcast的值,然后自行编译。这一操作的原理是,如果app_default_entry不为空,APP会跳过配置页面,在第一次打开时,直接进入Web页面。
Q:我该如何启用UHF/RFID的广播功能?
A:如果您手头有PDA的说明文档,请在文档中查找关于“RFID设置”或“UHF”设置的章节。通常情况下,设备厂商会提供一个设置程序,如东大集成的UHF或优博讯的RFIDWEDGE。在这个程序中,您首先需要打开广播功能,然后配置广播的action和包含有您需要的属性(如EPC)的extra的key。如果您的设备在厂商的服务期内,也可以直接对接厂商客服,比如这样说:“我现在使用的软件用广播的方式读取UHF的扫描结果,软件配置界面上要求提供广播Action和Extra key,如com.rscja.scanner.action.scanner.RFID和data,你们的设备该如何启用广播,从哪里看到或修改这两个值?
Q:我可以通过这个方案获取当前的位置信息吗?
A:可以。你可以通过标准的H5方法(getCurrentLocation)获取地理位置,或采用插件中提供的“获取地理位置”命令,获取指定坐标系的地理位置坐标。考虑到Android的机制,我们推荐您采用后者,响应速度更快。
Q:什么时候该启用硬件加速?
A:这里的硬件加速主要是提升渲染速度,如果你的应用运行在较新的手机上,硬件加速可以让页面刷新更流畅,如果运行在PDA上,推荐关闭硬件加速。当然,任何时候,如果你发现页面展示有问题,比如有一部分区域是模糊的,请关闭硬件加速。
Q:HAC启动时提示WebView版本过低怎么办?
A:活字格适配的WebView主版本为87或更新(VersionName中的第一段,如88.0.3359.158的主版本是88),您可以在APP内置的【设置】界面上看到当前设备中WebView的版本。我们强烈推荐您联系设备厂商,升级WebView组件,否则可能会遭遇页面渲染错误、操作卡顿或无法加载的问题;如果因为设备原因确实无法升级,可在【设置】界面上勾选“跳过WebView兼容性检查”,临时使用旧版本WebView,但此时活字格和插件将很难保证完美兼容。

0 个回复

您需要登录后才可以回帖 登录 | 立即注册
返回顶部