零代码

向Android应用添加打印功能的最快方式。利用标准的Android共享机制,让PrintHand处理所有打印复杂性。零代码集成,最大简洁性。

更多

Intent API

在易于实现和控制之间取得完美平衡。使用我们的Intent API发现打印机、配置选项并从您的应用打印,同时保持应用的外观和感觉。

更多

底层SDK

为高级开发人员提供最大控制和灵活性。直接访问PrintHand的打印引擎,完全自定义UI、工作流程和打印行为。非常适合企业应用程序。

更多

我们也是开发者。理解这些集成选项的最快方式是查看真实代码。查看我们的GitHub上的示例应用程序,其中包含工作示例。

零代码集成

向Android应用添加打印功能的最快途径。通过利用Android的标准共享意图机制,您的应用可以提供打印功能,而无需编写一行PrintHand特定的代码。当用户从您的应用共享适合打印的内容时,PrintHand会自动显示为共享选项之一,就像电子邮件或社交媒体应用一样。

这种方法非常适合希望以最少的开发工作量提供打印的应用。许多与PrintHand没有直接联系的成熟应用程序使用此方法使其用户能够打印文档、图像和其他内容。这种集成的美妙之处在于其简洁性——如果您的应用已经为其他目的实现了Android的共享功能,打印是免费的。

工作原理

当用户在您的应用程序中选择"共享"并从可用应用列表中选择PrintHand时,Android会将内容传递给PrintHand。然后PrintHand接管整个打印工作流程:渲染内容、显示预览、允许用户配置打印机设置,最后将作业发送到所选打印机。您的应用只需启动共享操作,PrintHand处理其他所有事情。

支持的内容类型

  • 图像:JPEG、PNG、GIF和其他标准图像格式
  • 文档:PDF文件和纯文本
  • Web内容:URL和HTML内容
  • 自定义数据:您的应用可以通过标准Android意图共享的任何内容

要求

用户必须在其设备上安装PrintHand应用并拥有有效许可证才能打印。您的应用不需要特殊权限或依赖项——只需要大多数应用已经使用的标准Android共享意图实现。

实现

如果您的应用已经实现了Android的共享功能,则不需要额外的代码。如果没有,使用Android的标准ShareCompat或Intent.ACTION_SEND API实现基本共享操作很简单。PrintHand文档和示例代码提供了正确实现的示例。

Intent API集成

↑ 返回顶部

Intent API在零代码共享和完整SDK集成之间提供了强大的中间地带。它允许您的应用程序以编程方式发现打印机、配置打印选项和启动打印作业——同时保持对应用用户界面和工作流程的控制。这是希望在不涉及底层打印操作复杂性的情况下进行有意义控制的开发人员最常用的集成方法。

使用Intent API,您可以构建自定义打印机选择对话框、创建预设打印配置,并将打印无缝集成到应用的现有工作流程中。您的应用通过一系列定义良好的意图与PrintHand通信,这些意图处理打印机发现、选项配置、内容渲染和作业提交。PrintHand处理这些请求并将结果返回给您的应用,允许您保持对用户体验的完全控制。

主要功能

  • 打印机发现:以编程方式通过WiFi、蓝牙和USB发现可用的打印机
  • 设置配置:控制纸张大小、方向、质量、颜色模式和其他打印机特定选项
  • 内容渲染:让PrintHand处理复杂的文档渲染或提交预渲染内容
  • 打印作业管理:启动打印、监视状态和处理结果

集成工作流程

您的应用向PrintHand的Intent API服务发送意图以执行特定操作。例如,要打印文档,您的应用会:发现可用的打印机并在UI中显示它们,允许用户选择打印机并配置选项,使用内容和所选设置发送打印意图,并在打印作业完成时接收确认。每个步骤都使用标准的Android意图通信,使Android开发人员的集成变得简单。

用例

Intent API非常适合具有复杂内容(如办公文档、地图、自定义表单或报告)的应用程序,这些内容需要应用特定的渲染。当您想根据文档类型或用户首选项预设打印选项时,或者当您需要将打印集成到多步骤工作流程中,用户不应离开您的应用时,它也是理想的选择。

要求

用户需要安装PrintHand应用并拥有有效许可证。您的应用必须在清单中包含PrintHand Intent API服务声明,并按照我们的API参考和示例代码中记录的方式实现意图通信协议。

底层SDK集成

↑ 返回顶部

PrintHand SDK提供对我们打印引擎的直接底层访问,为复杂应用程序提供最大的灵活性和控制。与依赖PrintHand的UI组件的Intent API不同,SDK让您完全自由地设计打印体验的每个方面。这种方法非常适合企业应用程序、白标解决方案或任何需要在没有用户交互的情况下在后台进行打印的应用程序。

使用SDK,您可以对打印过程的每个方面进行精细控制:打印机检测和筛选、驱动程序管理和安装、打印作业排队和优先级、自定义错误处理和恢复。您的应用程序完全负责整个打印工作流程,从向用户显示打印机选项到处理作业完成和错误。

高级功能

  • 完全UI控制:构建自定义打印机发现、配置和预览界面,以匹配您应用的设计
  • 后台打印:在没有任何用户交互或UI组件的情况下执行打印作业
  • 驱动程序管理:以编程方式为支持的设备下载和管理打印机驱动程序
  • 自定义渲染:完全控制内容准备和渲染管道
  • 企业功能:作业排队、批量打印、自动打印机选择和自定义错误处理

实现复杂性

SDK需要对移动打印概念有更深入的理解,并且比Intent API需要更多的开发工作。您的应用程序必须提供完整的UI用于打印机发现、显示打印机功能和选项、处理驱动程序下载和安装、管理打印作业生命周期以及实现错误处理和恢复。但是,这种努力会得到无与伦比的灵活性和控制的回报。

SDK结构

PrintHand SDK作为Java库提供,直接集成到您的Android应用程序中。它公开了所有打印操作的综合API,并提供涵盖打印机管理、作业提交、状态监视和配置管理的详细文档。SDK设计为线程安全且高效,适用于高容量打印场景。

用例

非常适合需要自动打印工作流程的企业应用程序、需要无需用户交互即可打印收据的销售点系统、具有高容量标签打印的物流和配送应用程序以及不应出现PrintHand品牌的白标解决方案。

要求

用户需要在其设备上安装PrintHand应用或独立PrintHand打印服务,并拥有有效许可证。您的应用必须在项目中包含SDK库,并需要了解打印机通信协议和Android打印架构以实现最佳实现。

示例代码和资源

为了帮助您开始PrintHand集成,我们创建了一个综合示例应用程序,演示了所有三种集成方法。示例代码显示了实现每种方法的最佳实践、处理边缘情况和提供出色用户体验。

GitHub存储库

我们的PrintingSample存储库包含共享意图、Intent API和SDK集成的工作示例。代码有良好的文档记录,并演示了实际使用模式。访问我们的GitHub存储库:

github.com/DynamixSoftware/PrintingSample

文档

详细的API文档、集成指南和故障排除资源可在存储库的wiki中找到。我们根据开发者反馈和新的Android版本定期更新文档。

支持

如有技术问题、集成帮助或报告问题,请通过support@printhand.com联系我们的开发者支持团队。我们随时为您提供帮助,助您成功将PrintHand集成到您的应用程序中。

重要:所有集成方法都要求用户在其Android设备上安装PrintHand应用并拥有有效许可证才能打印。目前,集成API仅适用于Android。iOS集成选项仅限于标准系统打印API。