私たちも開発者です。これらの統合オプションを理解する最も迅速な方法は、実際のコードを見ることです。実際に動作する例が含まれたGitHubのサンプルアプリケーションをご覧ください。
Intent API統合
↑ トップに戻るIntent APIは、コード不要の共有と完全なSDK統合の間の強力な中間点を提供します。アプリがプログラムでプリンターを検出し、印刷オプションを設定し、印刷ジョブを開始できるようにし、同時にアプリのユーザーインターフェイスとワークフローの制御を維持できます。これは、低レベルの印刷操作の複雑さなしに重要な制御を必要とする開発者に最も一般的に使用される統合方法です。
Intent APIを使用すると、カスタムプリンター選択ダイアログを作成し、プリセット印刷設定を作成し、アプリの既存のワークフローに印刷をシームレスに統合できます。アプリは、プリンターの検出、オプションの設定、コンテンツのレンダリング、ジョブの送信を処理する、明確に定義された一連のインテントを介してPrintHand™と通信します。PrintHand™はこれらのリクエストを処理し、結果をアプリに返し、ユーザーエクスペリエンスの完全な制御を維持できるようにします。
主な機能
- プリンターの検出:WiFi、Bluetooth、USB経由で利用可能なプリンターをプログラムで検出
- 設定の構成:用紙サイズ、向き、品質、カラーモード、その他のプリンター固有のオプションを制御
- コンテンツのレンダリング:PrintHand™に複雑な文書のレンダリングを処理させるか、事前にレンダリングされたコンテンツを送信
- 印刷ジョブの管理:印刷を開始し、ステータスを監視し、結果を処理
統合ワークフロー
アプリは、特定の操作を実行するためにPrintHand™のIntent APIサービスにインテントを送信します。たとえば、文書を印刷するには、アプリは次のようにします。利用可能なプリンターを検出し、UIに表示し、ユーザーがプリンターを選択してオプションを設定できるようにし、選択したコンテンツと設定で印刷インテントを送信し、印刷ジョブが完了したときに確認を受け取ります。各ステップは標準のAndroid Intent通信を使用するため、Android開発者にとって統合は簡単です。
使用例
Intent APIは、オフィス文書、マップ、カスタムフォーム、アプリケーション固有のレンダリングを必要とするレポートなどの複雑なコンテンツを持つアプリに最適です。文書タイプまたはユーザーの好みに基づいて印刷オプションをプリセットしたい場合、またはユーザーがアプリを離れるべきでない複数ステップのワークフローに印刷を統合する必要がある場合にも理想的です。
要件
ユーザーは、有効なライセンスを持つPrintHand™アプリをインストールする必要があります。アプリは、マニフェストにPrintHand™のIntent APIサービス宣言を含め、APIリファレンスとサンプルコードで文書化されているように、Intent通信プロトコルを実装する必要があります。
低レベルSDK統合
↑ トップに戻るPrintHand™ SDKは、印刷エンジンへの直接的な低レベルアクセスを提供し、洗練されたアプリケーションに最大限の柔軟性と制御を提供します。PrintHand™のUIコンポーネントに依存するIntent APIとは異なり、SDKは印刷エクスペリエンスのあらゆる側面を設計する完全な自由を提供します。このアプローチは、エンタープライズアプリケーション、ホワイトラベルソリューション、またはユーザーの操作なしにバックグラウンドで印刷を行う必要があるアプリに最適です。
SDKを使用すると、印刷プロセスのあらゆる側面を細かく制御できます。プリンターの検出とフィルタリング、ドライバーの管理とインストール、印刷ジョブのキューイングと優先順位付け、カスタムエラー処理と回復。アプリは、プリンターオプションをユーザーに提示することから、ジョブの完了とエラーの処理まで、印刷ワークフロー全体に完全に責任を負います。
高度な機能
- 完全なUI制御:アプリのデザインに一致するカスタムプリンター検出、設定、プレビューインターフェイスを構築
- バックグラウンド印刷:ユーザーの操作やUIコンポーネントなしで印刷ジョブを実行
- ドライバー管理:サポートされているデバイスのプリンタードライバーをプログラムでダウンロードおよび管理
- カスタムレンダリング:コンテンツの準備とレンダリングパイプラインの完全な制御
- エンタープライズ機能:ジョブキューイング、バッチ印刷、自動プリンター選択、カスタムエラー処理
実装の複雑さ
SDKは、モバイル印刷の概念のより深い理解と、Intent APIよりも大幅に多くの開発労力を必要とします。アプリは、プリンターの検出、プリンターの機能とオプションの表示、ドライバーのダウンロードとインストール、印刷ジョブのライフサイクルの管理、エラー処理と回復の実装のための完全なUIを提供する必要があります。ただし、この労力は、比類のない柔軟性と制御によって報われます。
SDK構造
PrintHand™ SDKは、Androidアプリに直接統合されるJavaライブラリとして提供されます。プリンター管理、ジョブ送信、ステータス監視、設定管理をカバーする詳細なドキュメントとともに、すべての印刷操作のための包括的なAPIを公開します。SDKは、スレッドセーフで効率的に設計されており、大量の印刷シナリオに適しています。
使用例
自動化された印刷ワークフローを必要とするエンタープライズアプリケーション、ユーザーの操作なしにレシート印刷を必要とするPOSシステム、大量のラベル印刷を行う物流および配送アプリケーション、PrintHand™ブランドが表示されるべきでないホワイトラベルソリューションに最適です。
要件
ユーザーは、有効なライセンスを持つPrintHand™アプリまたはスタンドアロンのPrintHand™印刷サービスをデバイスにインストールする必要があります。アプリは、プロジェクトにSDKライブラリを含め、最適な実装のためにプリンター通信プロトコルとAndroid印刷アーキテクチャの理解が必要です。
サンプルコードとリソース
PrintHand™の統合を開始するのを支援するために、3つの統合方法すべてを示す包括的なサンプルアプリケーションを作成しました。サンプルコードは、各アプローチを実装するためのベストプラクティス、エッジケースの処理、優れたユーザーエクスペリエンスの提供を示しています。
GitHubリポジトリ
PrintingSampleリポジトリには、共有インテント、Intent API、SDK統合の実際の例が含まれています。コードは十分に文書化されており、実際の使用パターンを示しています。GitHubリポジトリをご覧ください:
github.com/DynamixSoftware/PrintingSample
ドキュメント
詳細なAPIドキュメント、統合ガイド、トラブルシューティングリソースは、リポジトリのwikiで入手できます。開発者のフィードバックと新しいAndroidリリースに基づいて、ドキュメントを定期的に更新しています。
サポート
技術的な質問、統合支援、または問題の報告については、support@printhand.comの開発者サポートチームにお問い合わせください。PrintHand™をアプリに正常に統合するお手伝いをします。
重要:すべての統合方法では、ユーザーが印刷するための有効なライセンスを持つPrintHand™アプリをAndroidデバイスにインストールする必要があります。現在、統合APIはAndroid専用です。iOSの統合オプションは、システムの標準印刷APIに制限されています。