安卓调用PrinterShare实现无线打印功能

 最近项目需要用到蓝牙打印,百度了很多资料,关于安卓移动打印的文章都不是很详细。要知道自己去写一个蓝牙打印模块那可是一个比较大的工作量了,而且还需要对市面上的打印机进行兼容。这个我引用一篇文章大家看下:

一、Android客户端打印技术现状

云打印

在Android KitKat之前,Google推出云打印,用户将需要打印的数据上传到服务器并填写好联系信息,打印好的图片邮寄给用户。
这是一种商业模式而非技术手段。也就是说在Android KitKat之前,Google一直没有推出Android打印的技术方案。除了Google推出的云打印方案,还存在很多第三方公司,也提供类似的方案(参考:2)。

打印框架

KitKat发布,Google推出了打印框架。该框架作为需要使用打印服务的应用于实现打印服务的应用之间的接口,通过该框架方便了开发者对打印功能的使用。其中,需要使用打印服务的应用使用打印框架API申请服务,具体的打印服务由打印机原始设备生产生提供。本质上,该框架方便了应用打印功能的使用,但实际上打印中最为关键的打印数据流的创建仍然是打印机生产商提供的APK来完成。(参考:3)

第三方

除了各大打印机生产厂商提供的打印APK,还有部分第三方也提供具有打印功能的应用,比如 PrinterShare这款应用。该应用的实现原理不明,猜测可能是其获取到了各个厂商的PDL的支持情况,并且拥有特定PDL的开发参考数据。

市场上的产品

以金山公司的 WPS为例,该应用支持常用办公文件的打印,打印提供两种选项:第一,使用系统的打印服务,即之前提到的KitKat之后的打印框架;第二,生成.ps文件。需要说明的一点是,该文件的内容是PostScript,根据前面的描述可知,该文件并不被所有打印机支持。所以,该应用的做法是,通过使用打印框架提供打印功能,同时提供对部分打印机的支持。此外,通过搜索可以发现,目前市场上关于打印类的应用非常少。(参考:4)

二、可行方案

通过前面的了解,确定两种方案

  • 方式一:应用操作 excel 文件填入数据,打印功能由第三方应用实现
  • 方式二:使用PDL实现打印

方式一

  1. 应用更新并下载打印模板(.xsl文件)
  2. 应用通过第三方SDK操作模板文件,将相应的数据填入
  3. 打印目标文件生成完成后,用户通过第三方应用实施打印
    第三方应用:
    1)厂商提供的APK,支持某些型号的打印机(支持范围不广)
    2)第三方提供的APK,比如PrintShare(支持的范围较广,参考:5)
    关于打印机的选择,支持的打印机要求:
    a. 便于携带
    b. 插件支持
    c. 价格在一定范围

方式二

  1. 同方式一,但是下载的文件是.txt文件
  2. 应用将模板txt与数据拼合
产品特色: PrinterShare移动打印直接打印手机上的文件、包括来自SD 卡及Google 文件、Gmail、相片、联络资料、行事历、SMS/MMS、通话记录及网页的文件(DOC、DOCX、XLS、XSLX、PPT、 PPTX、PDF、TXT)。 功能: *经由Wi-Fi 或蓝牙,即可在附近的印表机直接列印,无须使用电脑; *列印至附近PC 或Mac 共享的印表机; *无限次远端列印。接收端(Mac 或PC) 无须购买页数或订用服务。 近端列印:如果您有Wi-Fi 或蓝牙印表机,就可直接在该印表机上列印。在主选单中选择附近的印表机,然后选择想要使用的印表机即可。如果您的印表机并不支援此功能,Windows 用户可到printershare.com 下载我们免费提供的软件,并在安装软件后共用您的印表机。 Mac 用户则可使用内建的Mac OS X Printer Sharing 服务来共享印表机。近端列印服务需使用PrinterShare Premium Key。您可在Market 购买Premium Key,或者到printershare.com 以PayPal 付款购买。购买Premium Key 之前,我们强烈建议您首先列印测试页面。 远端列印:您可经由互联网,在世上所有角落进行列印,包括您自己的印表机。接收列印要求的一端,无论使用Mac 还是PC,均须进入printershare.com 取得我们的免费软件并加以安装,才能共享印表机。您在装置里找到共享印表机后,就能列印。远端列印须使用PrinterShare 用户帐户。如果电脑和装置都由您控制,我们建议两者均使用相同的帐户注册。使用Premium Key 后,远端列印的限制就会取消。否则,接收列印要求的一方,就须购买页数或订用付费服务。首 20 页费用全免。 云端列印:PrinterShare 支援Google 云端列印,无须另行收费。要执行云端列印,您的电脑上需要安装最新版本的Google Chrome 浏览器。如欲取得更多设定指示,请参阅google.com/support/cloudprint 从装置上列印时,我们一般建议使用Wi-Fi 或3/4G,以获得更佳效能。但是,EDGE/GPRS 或任何其他连接方式也能使用。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值