# zkh_driver_printer **Repository Path**: zkh_2/zkh_driver_printer ## Basic Information - **Project Name**: zkh_driver_printer - **Description**: 证开鸿凭条打印机驱动 - **Primary Language**: TypeScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 2 - **Created**: 2024-10-28 - **Last Updated**: 2025-11-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 证开鸿凭条打印机驱动(热敏打印机) ### 介绍 证开鸿凭条打印机驱动是一款实现"证开鸿凭条打印机"鸿蒙化驱动适配的应用,其功能如下: - 外设"证开鸿凭条打印机"可在HarmonyOS/OpenHarmony系统上即插即用 - 驱动应用可打印文本内容 ### 架构示意图: ![](figures/zkh_printer_driver.png) ##### Service:主要负责集成厂商私有SO库并通过DDK方式进行设备USB初始化、定义相关业务USB指令 - libprinter.so:凭条打印机厂商私有SO库的USB DDK适配 - PrinterDriverAbility:继承DriverExtensionAbility,当USB设备插入时实例化PrinterDrvServiceImpl - IPC Stub:通过IDL定义libprinter.so库对外暴露的接口IPrinterService.idl,PrinterDrvServiceImpl继承其Stub类 ##### Client:主要负责IPC Proxy调用Stub的接口 - manager:通过deviceManager实现查询绑定外设设备,返回IRemoteObject对象(IPC Proxy) - PrintProvider:实例化IPC Proxy具体对象,并定义Client端对外暴露的接口 - IPC Proxy:Service端IDL对应的Proxy - pages:测试Client端调用证开鸿凭条打印机业务功能的页面 ##### Common:公共类 ##### Component:组件类,例如:关于弹框、加载弹框、隐私政策弹框等自定义组件 ##### entryability:程序入口EntryAbility ##### utils:工具类,例如:文件工具类、日志工具类、数据工具类等 ### 相关权限 - ohos.permission.ACCESS_DDK_HID - ohos.permission.ACCESS_DDK_USB - ohos.permission.ACCESS_EXTENSIONAL_DEVICE_DRIVER ### 环境搭建 ##### 软件要求 - DevEco Studio 4.1 Release - OpenHarmony SDK版本:API 11和API 10 ##### 硬件要求 - HarmonyOS 3.0/OpenHarmony 4.1系统平台设备 - 证开鸿凭条打印机扩展外设 ### 调用步骤 - 在项目的module.json5中申请权限ohos.permission.ACCESS_EXTENSIONAL_DEVICE_DRIVER - 导入IPC Proxy文件:i_printer_service.ts和printer_service_proxy.ts - 通过deviceManager.queryDevices查询外设列表,并遍历设备列表比较对应的vid、pid,若其vid、pid为9131和36611(0x23ab,0x8f03)则为证开鸿凭条打印机 - 通过deviceManager.bindDevice绑定设备,返回IRemoteObject对象(IPC Proxy) - 根据IRemoteObject对象创建printer_service_proxy.ts对应实例 - 通过printer_service_proxy.ts对应实例调用具体业务功能 详情代码可参考Client端 ### 注:编译运行时请配置应用签名