本发明涉及打印技术领域,尤其涉及一种基于虚拟蓝牙设备的打印方法及其系统。
背景技术:
随着互联网+的迅速发展,诸多使用第三方应用(百度外卖、手机银行APP等)的商业场景需要打印单据,比如订单、交易凭证等。目前市面上常用的大概两种,一是设备自带打印机(如智能POS机),第三方应用适配设备,使用其自带的打印机进行打印;二是未带打印机(如智能手机、pad),第三方应用可通过无线方式外接打印机。目前较主流是蓝牙通信方式。
主流智能设备都带有蓝牙通信功能,对第三方应用来说都是相通的,蓝牙通信协议标准,蓝牙打印机的指令集也有标准。
但存在以下几个问题:
1、使用蓝牙方式连接打印机对第三方应用来说都是标准化的协议,可以使用在各种智能设备上,用户只要再购置一台蓝牙打印机即可。这样应用开发就省掉了适配各智能厂家自带打印机的时间和繁琐的工作量。
2、对于自带了打印机的智能设备来说,由于接口问题,第三方应用无法直接使用,导致资源浪费;对用户来说,相当于需要购买两个打印机。
因此自带有打印机的智能设备需要有方案,让第三方应用无需做其他更改的情况下能使用到自带的打印机。
技术实现要素:
本发明所要解决的技术问题是:提出一种基于虚拟蓝牙设备的打印方法及其系统,可让第三方应用直接利用智能设备自带的打印机进行打印。
为了解决上述技术问题,本发明采用的技术方案为:一种基于虚拟蓝牙设备的打印方法,包括:
智能设备创建与自带的打印机对应的虚拟蓝牙设备;
第三方应用连接所述虚拟蓝牙设备;
第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;
所述智能设备发送所述打印指令数据至自带的打印机。
本发明还涉及一种基于虚拟蓝牙设备的打印系统,包括:
创建模块,用于智能设备创建与自带的打印机对应的虚拟蓝牙设备;
连接模块,用于第三方应用连接所述虚拟蓝牙设备;
第一发送模块,用于第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
解析模块,用于所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;
第二发送模块,用于所述智能设备发送所述打印指令数据至自带的打印机。
本发明的有益效果在于:智能设备将自带的打印机虚拟成蓝牙设备提供给第三方应用使用,对第三方应用来说,智能设备虚拟出来的虚拟蓝牙设备也是一个蓝牙设备,因此它可以用与连接外部蓝牙打印机相同的方式去连接智能设备自带的打印机,虚拟出来的蓝牙设备作为智能设备和第三方应用的通信通道,使智能设备可接收第三方应用发送的打印数据,并转换为自带的打印机支持的打印指令数据,从而完成打印;本发明可以让第三方应用无需做其他更改的情况下能使用到智能设备自带的打印机,使用户无需再额外购置蓝牙打印机,节约成本且使用方便,大大提高用户体验。
附图说明
图1为本发明一种基于虚拟蓝牙设备的打印方法的流程图;
图2为本发明实施例一的方法流程图;
图3为本发明一种基于虚拟蓝牙设备的打印系统的结构示意图;
图4为本发明实施例三的系统结构示意图。
标号说明:
1、创建模块;2、连接模块;3、第一发送模块;4、解析模块;5、第二发送模块;6、写入模块;
11、开启单元;12、创建单元。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:创建虚拟蓝牙设备,作为第三方应用和智能设备的通信通道。
请参阅图1,一种基于虚拟蓝牙设备的打印方法,包括:
智能设备创建与自带的打印机对应的虚拟蓝牙设备;
第三方应用连接所述虚拟蓝牙设备;
第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;
所述智能设备发送所述打印指令数据至自带的打印机。
从上述描述可知,本发明的有益效果在于:可以让第三方应用无需做其他更改的情况下能使用到智能设备自带的打印机,使用户无需再额外购置蓝牙打印机,节约成本且使用方便,大大提高用户体验。
进一步地,所述“智能设备创建与自带的打印机对应的虚拟蓝牙设备”具体为:
智能设备开启蓝牙功能;
根据预设的蓝牙设备信息,创建与智能设备自带的打印机对应的虚拟蓝牙设备。
由上述描述可知,通过创建虚拟蓝牙设备作为智能设备和第三方应用的通信通道,使智能设备可接收第三方应用发送的打印数据。
进一步地,所述“所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据”具体为:
所述智能设备依据自带的打印机预设的协议,将所述打印数据解析处理为打印指令数据,所述打印指令数据包括设置指令和打印数据。
由上述描述可知,第三方应用和打印机都无需更改设置,只需要由智能设备进行数据转换处理,即可进行打印,方便用户使用。
进一步地,所述“所述智能设备发送所述打印指令数据至自带的打印机”之后,进一步包括:
所述打印机将所述打印指令数据写入缓存。
由上述描述可知,写入缓存后即可进行打印。
请参照图3,本发明还提出一种基于虚拟蓝牙设备的打印系统,包括:
创建模块,用于智能设备创建与自带的打印机对应的虚拟蓝牙设备;
连接模块,用于第三方应用连接所述虚拟蓝牙设备;
第一发送模块,用于第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
解析模块,用于所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;
第二发送模块,用于所述智能设备发送所述打印指令数据至自带的打印机。
进一步地,所述创建模块包括:
开启单元,用于智能设备开启蓝牙功能;
创建单元,用于根据预设的蓝牙设备信息,创建与智能设备自带的打印机对应的虚拟蓝牙设备。
进一步地,所述解析模块具体用于所述智能设备依据自带的打印机预设的协议,将所述打印数据解析处理为打印指令数据,所述打印指令数据包括设置指令和打印数据。
进一步地,还包括:
写入模块,用于所述打印机将所述打印指令数据写入缓存。
实施例一
请参照图1,本发明的实施例一为:一种基于虚拟蓝牙设备的打印方法,可应用于自带打印机的智能设备,包括如下步骤:
S1:智能设备创建与自带的打印机对应的虚拟蓝牙设备;首先,智能设备开启蓝牙功能,然后根据预设的蓝牙设备信息,如名称、MAC地址、属性等,创建与智能设备自带的打印机对应的蓝牙设备。
S2:第三方应用连接所述虚拟蓝牙设备;即通过蓝牙通信的方式进行连接;由于第三方应用安装在所述智能设备上,智能设备存储有步骤S1中的预设的蓝牙设备信息,即虚拟蓝牙设备的信息,因此,第三方应用与虚拟蓝牙设备可直接进行连接,无需再进行交互验证。
S3:第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
S4:所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;所述智能设备依据自带的打印机预设的协议,将所述打印数据解析处理为打印指令数据,所述打印指令数据包括设置指令和打印数据。
S5:所述智能设备发送所述打印指令数据至自带的打印机。
S6:所述打印机将所述打印指令数据写入缓存;写入缓存后即可进行打印。
智能设备将自带的打印机虚拟成虚拟蓝牙设备提供给第三方应用使用,对第三方应用来说,智能设备虚拟出来的虚拟蓝牙设备也是一个蓝牙设备,因此它可以用与连接外部蓝牙打印机相同的方式去连接智能设备自带的打印机,虚拟出来的虚拟蓝牙设备作为智能设备和第三方应用的通信通道,使智能设备可接收第三方应用发送的打印数据,并转换为自带的打印机支持的打印指令数据,从而完成打印。
本实施例可以让第三方应用无需做其他更改的情况下能使用到智能设备自带的打印机,使用户无需再额外购置蓝牙打印机,节约成本且使用方便,大大提高用户体验。
实施例二
本实施例是实施例一的一具体应用场景。
自带有打印机的智能设备,如智能POS机,智能POS机上安装有第三方应用,如百度外卖APP。
利用智能POS机系统的蓝牙功能,虚拟出一个蓝牙设备。百度外卖APP可以像连接其他蓝牙打印机一样,连接所述虚拟蓝牙设备并进行通信。所述虚拟蓝牙设备接收百度外卖APP发送的订单的数据,智能POS机中的一个后台服务接收所述订单的数据,然后将所述订单的数据按照智能POS机的打印机的协议来解析转化,最后送给打印机进行打印。
也就是说,虚拟蓝牙设备成为了百度外卖APP和智能POS机自带的打印机的通信桥梁。引入这个技术后,百度外卖APP不用适配各家智能POS机的打印机就可以直接使用,而各家智能POS机的厂家也无需去适配市面上的各种需要打印单据的APP。两方都按蓝牙打印机的协议来做即可。
实施例三
请参照图4,本实施例是对应上述实施例的一种基于虚拟蓝牙设备的打印系统,包括:
创建模块1,用于智能设备创建与自带的打印机对应的虚拟蓝牙设备;
连接模块2,用于第三方应用连接所述虚拟蓝牙设备;
第一发送模块3,用于第三方应用通过所述虚拟蓝牙设备向所述智能设备发送打印数据;
解析模块4,用于所述智能设备对所述打印数据进行解析,得到自带的打印机所支持的打印指令数据;所述解析模块4具体用于所述智能设备依据自带的打印机预设的协议,将所述打印数据解析处理为打印指令数据,所述打印指令数据包括设置指令和打印数据;
第二发送模块5,用于所述智能设备发送所述打印指令数据至自带的打印机。
所述创建模块1包括:
开启单元11,用于智能设备开启蓝牙功能;
创建单元12,用于根据预设的蓝牙设备信息,创建与智能设备自带的打印机对应的虚拟蓝牙设备。
还包括:
写入模块6,用于所述打印机将所述打印指令数据写入缓存。
综上所述,本发明提供的一种基于虚拟蓝牙设备的打印方法及其系统,智能设备将自带的打印机虚拟成蓝牙设备提供给第三方应用使用,对第三方应用来说,智能设备虚拟出来的虚拟蓝牙设备也是一个蓝牙设备,因此它可以用与连接外部蓝牙打印机相同的方式去连接智能设备自带的打印机,虚拟出来的蓝牙设备作为智能设备和第三方应用的通信通道,使智能设备可接收第三方应用发送的打印数据,并转换为自带的打印机支持的打印指令数据,从而完成打印;本发明可以让第三方应用无需做其他更改的情况下能使用到智能设备自带的打印机,使用户无需再额外购置蓝牙打印机,节约成本且使用方便,大大提高用户体验。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。