虚拟打印设备进行打印的方法、系统、设备和存储介质技术方案

技术编号:31747194 阅读:16 留言:0更新日期:2022-01-05 16:27
本发明专利技术属于计算机技术领域,具体涉及一种虚拟打印设备进行打印的方法、系统、设备和存储介质。该方法包括:开机加载虚拟USB打印机模块,将非USB打印设备构建为虚拟USB打印机;获取USB打印机设备检测请求;响应USB打印机设备检测请求,将虚拟USB打印机信息反馈给USB打印机应用;建立与USB打印机应用的连接并进行数据传输;接收USB打印机应用发送的打印数据,由非USB打印设备进行打印。本发明专利技术实现不支持USB通信协议的打印设备能通过基于Android系统开发的USB打印机应用实现打印,当切换到不同协议的打印机方案时,无需修改应用,节省客户开发时间,在不修改硬件和打印驱动协议的情况下,实现上层应用对打印驱动的通信,大大减少硬件切换和驱动开发成本。硬件切换和驱动开发成本。硬件切换和驱动开发成本。

【技术实现步骤摘要】
虚拟打印设备进行打印的方法、系统、设备和存储介质


[0001]本专利技术属于计算机
,具体涉及一种虚拟打印设备进行打印的方法、系统、设备和存储介质。

技术介绍

[0002]智能终端的应用越来越广泛,目前主要使用的开源操作系统有Android和Ubuntu。其中,Android系统在民用移动领域应用广泛,有丰富的接口以及海量的应用,Android系统已经成为当今市场上占主导地位的系统。
[0003]因Android系统支持多种通信协议,不同方案商的打印机可通过通信协议与Android系统通信,应用调用对应的标准Android通信接口把打印数据发送到打印机实现打印。而打印驱动模块一般基于ESC/POS协议实现打印,所以市场上基于Android系统开发的打印机应用主要区别在于打印驱动模块通信协议的不同,如USB打印、蓝牙打印或TCP/IP打印。
[0004]现有技术中,终端应用(应用层)从Android系统调用USB通信接口,将打印数据通过USB接口发送给支持USB协议的打印机进行打印(打印机驱动);也即USB打印应用,只适用于支持USB协议的Android终端打印机。如果要实现USB打印应用与非USB打印机通信,只有通过改变打印应用,或者改变USB打印机的驱动。
[0005]换言之,基于Android系统开发的USB打印机应用只适用于支持USB协议的Android终端打印机。因此,针对不支持USB通信协议的打印机,如何使通过基于Android系统开发的USB打印机应用实现打印成为目前亟需解决的问题之一。

技术实现思路

[0006]为解决现有技术中基于Android系统开发的USB打印机应用只适用于支持USB协议的Android终端打印机,要实现USB打印应用与非USB打印机通信,只有通过改变打印应用,或者改变USB打印机的驱动的问题,本专利技术提供了一种虚拟打印设备进行打印的方法、系统、设备和存储介质,通过对智能终端的系统进行研发,实现非USB打印机加载虚拟USB打印机模块,从而实现产品在不修改上层应用和打印机驱动情况下,使不支持USB通信协议的打印机能通过基于Android系统开发的USB打印机应用实现打印。
[0007]本专利技术采用以下技术方案实现:
[0008]一种虚拟打印设备进行打印的方法,应用于不支持USB通信协议的打印机,即非USB打印设备,实现不支持USB通信协议的打印设备能通过基于Android系统开发的USB打印机应用实现打印,该虚拟打印设备进行打印的方法,包括:
[0009]开机加载虚拟USB打印机模块,将非USB打印设备构建为虚拟USB打印机;
[0010]获取USB打印机设备检测请求;
[0011]响应所述USB打印机设备检测请求,将所述虚拟USB打印机信息反馈给USB打印机应用;
[0012]建立与所述USB打印机应用的连接并进行数据传输;
[0013]接收USB打印机应用发送的打印数据,由非USB打印设备进行打印。
[0014]作为本专利技术的进一步方案,所述虚拟USB打印机模块由一个自定义服务和一个自定义USB设备类组成,在开机过程中用于初始化USB服务,在USB服务处于正常运行状态时,按照USB服务添加新设备流程实例化一个自定义USB设备类,实现虚拟一台USB打印机,将非USB打印设备构建为虚拟USB打印机。
[0015]进一步的,所述USB服务添加新设备流程为将不同类型的USB设备有不同的属性值添加到设备列表的流程,其中,自定义USB设备类的属性值为参考USB打印机模型填充一个USB打印设备所带的属性值。
[0016]进一步的,所述自定义USB设备类的属性值包括设备描述符、端点描述符、厂商ID或设备版本号。
[0017]作为本专利技术的进一步方案,所述USB打印机设备检测请求由所述USB打印机应用调用安卓标准USB通信接口与USB服务模块交互,以发出获取USB打印机设备的请求,用于获取Android设备上USB设备的数量。
[0018]进一步的,响应所述USB打印机设备检测请求,为加载虚拟USB打印机模块的非USB打印设备构建为虚拟USB打印机后,所述USB打印机应用获取到该虚拟USB打印机设备时默认获取到一台USB打印机。
[0019]进一步的,虚拟USB打印机通过USB通信协议与所述USB打印机应用匹配。
[0020]进一步的,所述接收USB打印机应用发送的打印数据,由非USB打印设备进行打印时,还包括:
[0021]虚拟USB打印机设备与非USB打印设备的打印模块初次连接时发送握手数据;
[0022]通过不同通信协议握手的差异区分当前打印模块的通信协议类型;
[0023]将USB协议转换为当前非USB打印设备能识别的通信协议,并将打印数据发送至非USB打印设备进行打印。
[0024]本专利技术还包括一种虚拟打印设备进行打印的系统,所述虚拟打印设备进行打印的系统采用前述虚拟打印设备进行打印的方法实现不支持USB通信协议的打印设备能通过基于Android系统开发的USB打印机应用实现打印;所述虚拟打印设备进行打印的系统包括虚拟USB打印机模块、USB服务模块、转换通信模块以及打印驱动模块。
[0025]所述虚拟USB打印机模块用于非USB打印设备开机时加载,将非USB打印设备构建为虚拟USB打印机。所述USB服务模块用于通过安卓标准USB通信接口与USB打印机应用交互,以发出所述USB打印机应用的获取USB打印机设备的请求,在检测到虚拟USB打印机时将信息反馈给所述USB打印机应用,还用于将USB打印机应用的数据传输至虚拟USB打印机模块。
[0026]所述转换通信模块用于将USB协议转换为当前非USB打印设备能识别的通信协议,用于将数据传输至打印驱动模块。所述打印驱动模块,用于接收转换通信模块传输的数据,驱动非USB打印设备进行打印。
[0027]本专利技术还包括一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现虚拟打印设备进行打印的方法的步骤。
[0028]本专利技术还包括一种存储介质,存储有计算机程序,所述计算机程序被处理器执行
时实现虚拟打印设备进行打印的方法的步骤。
[0029]本专利技术提供的技术方案,具有如下有益效果:
[0030]本专利技术能够在不支持USB通信协议的打印设备上通过加载虚拟USB打印机模块构建一台虚拟USB打印机,系统默认检测到USB打印机,上层应用可通过标准接口连接虚拟USB打印机进行通信,利用转换通信模块,可剥离底层驱动的通信协议,USB打印机应用无需关心打印驱动协议,全部交由转换通信模块处理进行打印。在客户已开发完标准安卓USB打印机应用基础上,通过本专利技术,当切换到不同协议的打印机方案时,无需修改应用,节省客户开发时间;打印模块支持的通信协议与硬件密切相关,在不修改硬件和打印驱动协议的情况下,通过本专利技术,实现上层应用对打印驱动的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟打印设备进行打印的方法,应用于不支持USB通信协议的打印机,即非USB打印设备,实现不支持USB通信协议的打印设备能通过基于Android系统开发的USB打印机应用实现打印;其特征在于,该虚拟打印设备进行打印的方法,包括:获取USB打印机设备检测请求;响应所述USB打印机设备检测请求,将所述虚拟USB打印机信息反馈给USB打印机应用;建立与所述USB打印机应用的连接并进行数据传输;接收USB打印机应用发送的打印数据,由非USB打印设备进行打印。2.如权利要求1所述的虚拟打印设备进行打印的方法,其特征在于:所述虚拟USB打印机模块由一个自定义服务和一个自定义USB设备类组成,在开机过程中用于初始化USB服务,在USB服务处于正常运行状态时,按照USB服务添加新设备流程实例化一个自定义USB设备类,实现虚拟一台USB打印机,将非USB打印设备构建为虚拟USB打印机。3.如权利要求2所述的虚拟打印设备进行打印的方法,其特征在于:所述USB服务添加新设备流程为将不同类型的USB设备有不同的属性值添加到设备列表的流程,其中,自定义USB设备类的属性值为参考USB打印机模型填充一个USB打印设备所带的属性值。4.如权利要求3所述的虚拟打印设备进行打印的方法,其特征在于:所述自定义USB设备类的属性值包括设备描述符、端点描述符、厂商ID或设备版本号。5.如权利要求4所述的虚拟打印设备进行打印的方法,其特征在于:所述USB打印机设备检测请求由所述USB打印机应用调用安卓标准USB通信接口与USB服务模块交互,以发出获取USB打印机设备的请求,用于获取Android设备上USB设备的数量。6.如权利要求5所述的虚拟打印设备进行打印的方法,其特征在于:所述响应所述USB打印机设备检测请求,为加载虚拟USB打印机模块的非USB打印设备构建为虚拟USB打印机...

【专利技术属性】
技术研发人员:梁嘉津林海新
申请(专利权)人:广东天波信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1