Android プログラム ガイド

Similar documents
Android Layout SDK プログラミング マニュアル

Windows Graphic Loader for Label Printers

CashDrawer ライブラリ API 仕様書 2014/07/09 CashDrawer ライブラリ API 仕様書 Rev / 10

PowerTyper マイクロコードダウンロード手順

Windows Layout SDK プログラミング マニュアル

Windows Layout SDK プログラミング マニュアル

Android用 印刷プラグイン Canon Print Service マニュアル

1. ネットワーク経由でダウンロードする場合の注意事項 ダウンロード作業における確認事項 PC 上にファイアウォールの設定がされている場合は 必ずファイアウォールを無効にしてください また ウイルス検知ソフトウェアが起動している場合は 一旦その機能を無効にしてください プリンターは必ず停止状態 (

Microsoft Word - IP自動設定ツール_取扱説明書_ doc

ネットワーク設定マニュアル(Admint BOX編)Version.1.2

PowerPoint プレゼンテーション

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

Microsoft Word PXシリーズプリンタドライバインストール説明書(Win8・10-32・64bit)

目 次 1. 概要 ホームアプリの主な機能 操作方法 初期設定 初期画面 診断 ( 車両情報選択画面 ) 車両情報の登録 編集 登録した車両を削除する...

V-Client for Android ユーザーズガイド

ワイヤレスバーコードリーダー CM-520W1 設定資料 Bluetooth SPPの設定

// このクラスの有効期間中の各呼び出しに使用される キャッシュされた Socket オブジェクト Socket socket = null; // 非同期処理が完了したことを通知するために信号を送るオブジェクト static ManualResetEvent clientdone = new Ma

OPN Terminalの利用方法

PowerPoint プレゼンテーション

MS5145 USB シリアル エミュレーション モードの設定

PowerPoint プレゼンテーション

Java演習(4) -- 変数と型 --

対応機種 本ガイドは 次のモデルを対象としています MFC-J6573CDW/J6973CDW/J6990CDW マークについて 本文中では マークについて次のように表記しています 操作手順に関する補足情報を説明しています 商標について Wi-Fi Wi-Fi Alliance Wi-Fi Dire

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版   None

対応機種 本ガイドは 次のモデルを対象としています DCP-J557N/J757N/J957N MFC-J877N/J987DN/J987DWN マークについて 本文中では マークについて次のように表記しています 操作手順に関する補足情報を説明しています 商標について BROTHER は ブラザー工

ESET Mobile Security V4.1 リリースノート (Build )

AirPrint ガイド Version A JPN

Android 機器について 接続障害やバーコードデータの出力障害などは Android 機器の電源オフ オンと Wi-Fiをオフにすることで解消するケースが散見されます Android 機器で障害が発生した場合は まず 次の手順をお試し下さい 1. Android 機器の電源を切ります ( 再起動

Fujitsu Standard Tool

Microsoft PowerPoint - F-04E JB化の操作手順書(Wi-Fi編)_ ppt [互換モード]

ネットワーク接続ガイド このガイドでは プリンターとパソコンをネットワーク接続する方法について説明しています ネットワーク接続 無線 LAN 接続 接続の準備プリンターの設定設定方法の選択 AOSS 設定で接続らくらく無線スタート設定で接続 WPS 設定で接続手動設定で接続詳細設定で接続無効 WEP

MOVERIO Pro BT-2000/2200 デベロッパーズガイド 自己診断機能&GPSアシスト

KEW Smart for KEW3441BT 取扱説明書

Macintosh

Bluetooth MIDI 接続ガイド

AirPrint ガイド 本ガイドは 次のモデルを対象としています DCP-J132N/J152N/J552N/J752N/J952N MFC-J820DN/J820DWN/J870N/J890DN/J890DWN/J980DN/J980DWN

Thread

変更履歴 日付 Document ver. 変更箇所 変更内容 017/4/ 新規作成 017/5/ デバイスオーナーモードと 説明を追加 は デバイスオーナーモード導 説明を追加 入手順 QR コード セクション削除 QR コードへの参照文を変更 QR コードによる導入手順

問題1 以下に示すプログラムは、次の処理をするプログラムである

OS バージョンアップ実行中のご注意 OS バージョンアップ中は 故障の原因になりますので 絶対に N-03E 本体の電源を切ったり 電池パックを外したりしないでください OS バージョンアップ中は 電話の発着信を含めすべての機能がご利用になれません OS バージョンアップ中は 他のアプリケーション

Smart-telecaster for iOS/Android ML ユーザーズガイド

目次 プリンタドライバをインストールする (USB 接続の場合 )... 3 プリンタとコンピュータを USB で接続する ( 参考 ) プリンタドライバをインストールする前に USB で接続してしまった場合 プリンタドライバをインストールする (LAN 接続の場合 )...

ユーティリティ 管理番号 内容 対象バージョン 157 管理情報バッチ登録コマンド (utliupdt) のメッセージ出力に対し リダイレクトまたはパイプを使用すると メッセージが途中までしか出 力されないことがある 267 転送集計コマンド (utllogcnt) でファイル ID とホスト名の組

対応機種 本ガイドは 次のモデルを対象としています DCP-J4210N DCP-J4215N MFC-J4510N MFC-J4910CDW マークについて 本文中では マークについて次のように表記しています 操作手順に関する補足情報を説明しています 商標について brother のロゴは ブラザ

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

Google クラウドプリント対応プリンターの登録 ~ テストプリントまで メール : 装置名 :OKI-MC56- Google クラウドプリントへの登録が完了しました [OK] この画面を閉じます Ver (014/04/0) 印刷する人は Google

intra-mart Accel Platform — イベントナビゲータ 開発ガイド   初版  

PowerPoint プレゼンテーション

Java知識テスト問題

<4D F736F F F696E74202D FC915088C4816A462D A4289BB82CC91808DEC8EE88F878F D466995D2816A5F F4390B394C52E B8CDD8AB B83685D>

Microsoft PowerPoint ppt

証明書ダウンロードシステム操作手順書 (ios) 第 1.15 版 証明書ダウンロードシステム 操作手順書 (ios) Ver1.15 セキュアネットワークサービス 2018 年 10 月 29 日 セキュアネットワークサービス 1 DLS-SNT-IOS-V1.15

【あんしんナンバーチェック】サービスマニュアル

TestDesign for Web

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

spsafety_manual_sp_start_

iphone / ipod touch 設定 設置マニュアル ご自身で用意された iphone / ipod touch( 以下 端末と表記 ) を地震計として利用するためのマニュアルです 下記注意事項をご覧の上 本マニュアルに従って端末の設定 設置を行い モニタリングを開始してください 注意事項

Microsoft Word - ssVPN MacOS クライアントマニュアル_120版.doc

ARROWS Tab Wi-Fi (FAR70B) ソフトウェアバージョンアップ手順書

目次 1 本ガイドの使い方... 1 注意事項の定義 商標について...1 はじめに... 2 Google Play ストアアプリから Brother iprint&scan をインストールする...2 接続方法...2 NFC 機能を使う場合... ブラザー製品を選択する... 画像

Macintosh

1. Android のホーム画面 06. クイックマニュアル [ 遠隔接続編 -Android 版 -] 2. ストアの起動画面 Android を起動しますと Play ストア ( 赤枠 ) というア イコンがありますのでこちらをタップしてください 機種により表示方法は異なります ストアの初期画

ヘルプガイド デジタルペーパー Digital Paper App for mobile Digital Paper App for mobile は Google Play または App Store でダウンロードできます Digital Paper App for mobile で検索してくだ

ESET Mobile Security V3.6 リリースノート (Build )

御使用の前に必ず本取扱説明書をよく読んで理解して 安全の為の指示に従って下さい もし 不明点が有れば販売店か弊社におたずね下さい 目次 1. はじめに 対応 ios デバイス ダウンロードおよびライセンス認証 ダウンロード ライセ

印刷アプリケーションマニュアル

ServerView Resource Orchestrator V3.0 ネットワーク構成情報ファイルツール(Excel形式)の利用方法

4-1 Palmi をインターネットに接続するには Palmi に最新のニュースや天気予報などの情報を読ませたり Palmi が撮影した写真をメールで送信させたりといった使い方をするには インターネットに接続する必要があります Palmi をインターネットに接続する環境を準備する Palmi をイン

 

ARROWS Tab Wi-Fi (FAR75A/FAR70A) ソフトウェアバージョンアップ手順書

ネットワーク接続ガイド このガイドでは プリンターとパソコンをネットワーク接続する方法について説明しています ネットワーク接続 無線 LAN 接続 接続の準備プリンターの設定設定方法の選択 AOSS 設定で接続らくらく無線スタート設定で接続 WPS 設定で接続手動設定で接続詳細設定で接続無効 WEP

モバイル統合アプリケーション 障害切り分け手順書

ギョロモガイガー Ⅱ 操作ガイド ギョロガイガー Ⅱ 操作ガイド 本書では ギョロガイガー Ⅱ の操作方法についてご説明いたします 目次 1. 概要 コンセプト 主な機能 基本仕様 インストール 使い方...

OS バージョンアップ実行後のご注意 OS バージョンアップ後 更新完了通知が自動的にNECカシオモバイルコミュニケーションズ株式会社の運用するサーバへ送信されます なお NECカシオモバイルコミュニケーションズ株式会社は送信された情報を OS バージョンアップ以外の目的には利用いたしません また

PowerPoint Presentation

証明書インポート用Webページ

新・明解Java入門

改定履歴 Version リリース日改訂内容 年 5 月 1 日 OS バージョンアップに伴い 以下の項目の手順 画像を修正しました 3 スマートフォン (Android 6.0) の設定例 を 3 スマートフォン (Android ) の設定例 に修正しました 4

システム更新の手順 1-1. Android のホーム画面で [ アプリ ] [ 設定 ] [ 画面 ] [ 画面の自動スリープ ] の [ しない ] をタップします 1-2. Android のホーム画面で [ アプリ ] [ 設定 ] [ タブレット情報 ] を順にタップし ビル ド番号 を確

症状原因対処方法 電源が入らない 電源が入ると ブザー 音が 1 回 ピ と鳴った あと Cyclops 本体の中 央の LED が緑または赤 に 1 回点滅します 充電されない 正常に充電できている 場合 Cyclops 本体の左 側の LED が赤点灯し 満充電で緑点灯しま す 電源が切れる 故

【ドコモあんしんスキャン】サービスマニュアル

リモートアクセス Smart Device VPN ユーザマニュアル [ マネージドイントラネット Smart Device VPN 利用者さま向け ] 2015 年 10 月 20 日 Version 1.6 bit- drive Version 1.6 リモートアクセス S

目次 目次... 本書の見かた... 商標について... 重要なお知らせ... はじめに... 4 概要... 4 使用環境について... 5 サポートされている OS... 5 ネットワーク設定... 5 印刷... 8 ipad iphone ipod touch から印刷する... 8 OS

オフィスまるごとサポートデバイスマネジメント Device Owner Mode 導入マニュアル 最終更新日 2018 年 9 月 14 日 株式会社オプティム (c) 東日本電信電話株式会社

User Support Tool 操作ガイド

HP Touchpoint Manager Windows 10 Mobile 登録手順

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

各部の名称に関して Voyager1602g は大小 2 つのボタンと 3 つの LED ランプを搭載しております バッテリ LED 残量が 1/4 以下になると 赤く点灯します スキャンボタン プログラマブルボタン スキャン LED スキャンボタンを押したときに連動する LED です Blueto

目次 第 1 章概要....1 第 2 章インストールの前に... 2 第 3 章 Windows OS でのインストール...2 第 4 章 Windows OS でのアプリケーション設定 TP-LINK USB プリンターコントローラーを起動 / 終了するには

目次 はじめに > P.3 transit manager とは 初期設定 3 利 履歴の読み込み 4 旅費交通費精算 Web 5 登録カード 6ヘルプ > > > > > P.4. ログイン P.5. パスワード変更 P.6 3. 交通系 ICカードの登録 P.7 機能一覧 P.8 交通系 ICカ

目次 1. プリンタの設定 プリンタ出力モード設定 3 2. B-419 プリンタドライバのインストール 前準備 4 インストール 6 3. 用紙設定 圧着サーマル送り状 らく楽複写送り状 印刷設定 印刷設定 ネットワークプリンタ対応 共有指定 ネットワークプリンタの設定

エプソン社製スキャナドライバImage Scan! for Linux インストール手順

** 平成 16 年度 FE 午後問題 Java** 示現塾プロジェクトマネージャ テクニカルエンジニア ( ネットワーク ) など各種セミナーを開催中!! 開催日 受講料 カリキュラム等 詳しくは 今すぐアクセス!! 平成 16

Windows Server 2003での使用方法

mCollectionプリンタソフトウェア インストールマニュアル

AGT10(Android (TM) 2.3) ファームウェア更新方法

DocuPrint 4050 PostScript ユーザーズガイド

PowerPoint Presentation

Soliton Net’Attest EPS + AT-TQ2400 series WPA/WPA2-Enterprise EAP-PEAP/TLS 設定例

API 連携方式 外部 DLL の呼び出し宣言 外部 DLL の呼び出し宣言のサンプルコード (Microsoft Visual C#.NET の場合 ) プログラムコードの先頭で using System.Runtime.InteropServices; が必要 クラスの内部に以下のような外部 D

Transcription:

モバイルプリンター Android モジュールプログラムガイド ESC/POS, CPCL Ver. 1.00

更新履歴 日付 バージョン 対象 SDK 履歴 2012/11/29 0.08 新規 2014/03/18 1.00 1.064 USB インターフェース対応 1

1. 目次 Android モジュールプログラムガイド... 0 更新履歴... 1 1. 目次... 2 2. はじめに... 3 3. 全体の流れ... 4 4. 詳細... 5 4.1. プリンターと接続... 5 4.1.1. コード例 Bluetooth インターフェース利用の場合... 6 4.1.2. コード例 Wi-Fi インターフェース利用の場合... 7 4.1.3. コード例 USB インターフェース利用の場合... 8 4.2. プリンターステータスを取得確認... 10 4.2.1. コード例 ESC/POS コマンド利用の場合... 11 4.2.2. コード例 CPCL コマンド利用の場合 (CMP-20 非対応 )... 12 4.3. 印刷データを送信... 13 4.3.1. コード例 ESC/POS コマンドを利用の場合... 14 4.3.2. コード例 CPLC コマンドを利用の場合... 15 4.4. 印刷データの送信完了を待つ... 16 4.4.1. コード例... 16 4.5. プリンターとの接続を切断する... 17 4.5.1. コード例 Bluetooth インターフェース利用の場合... 17 4.5.2. コード例 Wi-Fi インターフェース利用の場合... 18 4.5.3. コード例 USB インターフェース利用の場合... 19 2

2. はじめに この Android モジュールプログラムガイド では Android モバイルアプリケーションの開発に必要な Jar パッケージファイルから得られるメソッドの利用する上で全体の流れや注意点について説明します プリンターの仕様付き不明の点は CMP-20/30 の技術マニュアル ESC/POS のコマンドマニュアル CPCL のコマンドマニュアルを参考にして頂きますよう お願いいたします ESC/POS コマンドと CPCL コマンドの選択の目安 レシートのように印刷する長さが変化する場合は ESC/POS コマンドを ラベル用紙やプリプリント用紙のように印刷する長さが固定の場合は CPCL コマンドを 選択してください なお CMP-20 は CPCL コマンド非対応となります ご注意ください CMP-30 で利用できる ESC/POS コマンドと CPCL コマンドの選択は Windows 上で動作するユーティリティ上で設定します 本ガイドに掲載するコードは 一例であり 動作を保証するためのコードではありません また バージョンアップにより仕様が変わる場合があります お客様の環境で十分に評価の上 ご利用ください 一部の Android4.2.X 端末において Bluetooth 接続ができない現象を確認しています お客様の環境で十分に評価の上 ご利用ください New 3

3. 全体の流れ 以下に CMP-20/30 で印刷を行う際の全体の流れを示します START プリンターと接続 1. ご利用の CMP-20/30 に搭載される Bluetooth Wi-Fi ある いは USB インターフェースで接続を確立してください プリンターステータスを取得 エラーなし? 2. CMP-20/30 のステータスを取得 エラーがあった場合 エラー処理を行うようにしてください なお ステータスの取得に失敗した場合は 接続の切断を行ってください 印刷データを送信 3. CMP-20/30 へ印刷データを送信してください 印刷データの送信完了を待つ 4. CMP-20/30 のステータスを取得することで 印刷データの送信完了待ちが行えます プリンターとの接続を切断 5. CMP-20/30 との接続を切断してください END 取得した CMP-20/30 のステータスに応じて 再印刷や発生した障害の復旧などの処理を行ってください プリンターとの接続を切断 した直後に プリンターと接続 を行った場合 接続に失敗する場合があります 切断と接続が連続する場合は 切断後に 500ms 以上の待ち時間を設定してください 4

4. 詳細 4.1. プリンターと接続アプリケーションは getinstance() メソッドを利用してインスタンスを取得し connect() メソッドでプリンターと接続してください プリンターと接続できなかった場合 connect() メソッドは例外エラーを返しますので try/catch で補足してください New USB インターフェース利用の場合 Bluetooth Wi-Fi インターフェースとは異なった処理が必要となります USBPort クラスの connect_device() メソッドでプリンターと接続してください プリンターと接続できなかった場合 connect_device() メソッドの戻り値 USBPortConnection に null を返します 利用するクラス BluetoothPort クラス または WiFiPort クラス または USBPort クラスと USBPortConnection クラス 1 台の Android 端末と 複数台の CMP-20/30 と を同時に接続することはできません また 複数台の Android 端末と 1 台の CMP-20/30 と を同時に接続することはできません 上記のような複数台が共有して運用したい場合は 1 台の Android 端末と 1 台の CMP-20/30 と だけが接続されるようにして運用してください CMP-20/30 を無線でご利用いただく場合 ご利用環境によって接続が不安定な場合があります もし そのような環境で接続が途切れた場合は 接続を切断し 接続からやり直す必要があります 5

4.1.1. コード例 Bluetooth インターフェース利用の場合 private com.citizen.port.android.bluetoothport port; private java.lang.thread hthread = null; // インスタンスを取得 port = com.citizen.port.android.bluetoothport.getinstance(); boolean bconnected = false; long lconnecttimeout = 10000; long lstarttime = System.currentTimeMillis(); // 接続タイムアウト (10sec) do { port.connect("12:34:56:78:90:ab"); // 接続 (Bluetooth アドレス ) bconnected = true; break; // 接続成功 catch (IOException e) { port.disconnect(); catch (IOException e1) { java.lang.thread.sleep(100); catch (InterruptedException e2) { // 再接続のためのウエイト (0.1sec) while (lconnecttimeout > System.currentTimeMillis() - lstarttime); if (!bconnected) { return; // 接続失敗 // RequestHandler を開始 hthread = new java.lang.thread( new com.citizen.request.android.requesthandler()); hthread.start(); 電波状況により接続エラーとなる場合があります 上記コード例のようにリトライを行ってください Bluetooth アドレスは 12 文字 かつ アルファベットは大文字 で指定してください 6

4.1.2. コード例 Wi-Fi インターフェース利用の場合 private com.citizen.port.android.wifiport port; private java.lang.thread hthread = null; // インスタンスを取得 port = com.citizen.port.android.wifiport.getinstance(); boolean bconnected = false; long lconnecttimeout = 10000; long lstarttime = System.currentTimeMillis(); // 接続タイムアウト (10sec) do { port.connect("192.168.0.10"); // 接続 (IP アドレス ) bconnected = true; break; // 接続成功 catch (IOException e) { port.disconnect(); catch (IOException e1) { java.lang.thread.sleep(100); catch (InterruptedException e2) { // 再接続のためのウエイト (0.1sec) while (lconnecttimeout > System.currentTimeMillis() - lstarttime); if (!bconnected) { return; // 接続失敗 // RequestHandler を開始 hthread = new java.lang.thread( new com.citizen.request.android.requesthandler()); hthread.start(); 7

4.1.3. コード例 USB インターフェース利用の場合 private android.content.context mcontext; private android. hardware.usb.usbmanager musbmanager; All New private com.citizen.port.android.usbport musbport; private com.citizen.port.android.usbportconnection musbportconnection; private static final String ACTION_USB_PERMISSION = "com.your.app.usb_permission"; mcontext = this.getactivity().getapplicationcontext(); musbmanager = (UsbManager)mContext.getSystemService(Context.USB_SERVICE); musbport = new com.citizen.port.android.usbport(musbmanager, mcontext); if (musbportconnection == null) { // BroadcastReceiver 登録 context.registerreceiver(musbreceiver, new IntentFilter(ACTION_USB_PERMISSION)); // 接続 musbportconnection = musbport.connect_device(usbport.cmp_port_usb); if (musbportconnection == null) { return; // 接続失敗 private final BroadcastReceiver musbreceiver = new BroadcastReceiver() { public void onreceive (Context context, Intent intent) { String action = intent.getaction(); if (ACTION_USB_PERMISSION.equals(action)) { synchronized (this) { UsbDevice usbdevice = (UsbDevice)intent.getParcelableExtra(UsbManager.EXTRA_DEVICE); if (intent.getbooleanextra(usbmanager.extra_permission_granted, false)) { if (usbdevice!= null) { // USB デバイス接続許可 else { // USB デバイス接続許可を拒否 mcontext.unregisterreceiver(musbreceiver); // BroadcastReceiver 登録を削除 8

CMP-20/30 のパワーセーブモードを無効に設定してご利用ください CMP-20/30 の USB インターフェースはパワーセーブモード非対応です 電源オン後や USB ケーブル接続後の初回の connect_device 接続は失敗します その際に表示される USB デバイス接続許可ダイアログの OK ボタンをタップしてください この手動操作により USB デバイスとの接続が許可され はじめて connect_device 接続が成功します また この許可した状態は Android 端末に保存されないため 運用時に注意が必要です 以下は表示される USB デバイス接続許可ダイアログの一例です 9

4.2. プリンターステータスを取得確認 アプリケーションは 印刷の前後において printercheck() メソッド status() メソッドを順に実行し プリンタ ーの状態を現す status() メソッドの戻り値を取得し エラーなし状態であることを確認してください 利用するクラス ESCPOSPrinter クラス または CPCLPrinter クラス CMP-20/30 がパワーセーブモード中は 印刷等のメソッドが正常に機能しません 必ず事前にパワーセーブモードを解除してください パワーセーブモードの解除は printercheck() メソッドの実行により解除することができます (Ver. 1055 以降 ) CMP-20/30 のパワーセーブモードの設定は Windows 上で動作するユーティリティで設定します New USB インターフェース利用の場合 ESCPOSPrinter クラス または CPCLPrinter クラスをインスタンス化する際 第二引数に USBPortConnection を必ず指定してください 以下に一例を示します com.citizen.jpos.printer.escposprinter printer = new com.citizen.jpos.printer.escposprinter("iso-8859-1", musbportconnection); 10

4.2.1. コード例 ESC/POS コマンド利用の場合 // プリンターステータスの取得と確認 com.citizen.jpos.printer.escposprinter printer = new com.citizen.jpos.printer.escposprinter("iso-8859-1"); if (ESCPOSConst.CMP_SUCCESS == printer.printercheck()) { int status = printer.status(); if (ESCPOSConst.CMP_STS_NORMAL == status) { // エラーなし状態 else { if ((ESCPOSConst.CMP_STS_MSR_READ & status) > 0) { // MSR 読み取りモード状態 if ((ESCPOSConst.CMP_STS_PAPER_EMPTY & status) > 0) { // 用紙なし状態 if ((ESCPOSConst.CMP_STS_COVER_OPEN & status) > 0) { // カバーオープン状態 if ((ESCPOSConst.CMP_STS_BATTERY_LOW & status) > 0) { // バッテリー容量低下状態 else { // ステータス取得に失敗 エラー処理はそれぞれ実装してください 11

4.2.2. コード例 CPCL コマンド利用の場合 (CMP-20 非対応 ) // プリンターステータスの取得と確認 com.citizen.jpos.printer.cpclprinter printer = new com.citizen.jpos.printer.cpclprinter("iso-8859-1"); if (CPCLConst.CMP_SUCCESS == printer.printercheck()) { int status = printer.status(); if (CPCLConst.CMP_STS_CPCL_NORMAL == status) { // エラーなし状態 else { if ((CPCLConst.CMP_STS_CPCL_BUSY & status) > 0) { // ビジー状態 if ((CPCLConst.CMP_STS_CPCL_PAPER_EMPTY & status) > 0) { // 用紙なし状態 if ((CPCLConst.CMP_STS_CPCL_COVER_OPEN & status) > 0) { // カバーオープン状態 if ((CPCLConst.CMP_STS_CPCL_BATTERY_LOW & status) > 0) { // バッテリー容量低下状態 else { // ステータス取得に失敗 エラー処理はそれぞれ実装してください 12

4.3. 印刷データを送信 アプリケーションは プリンターステータスを取得確認 した後に各種メソッドを利用して印刷データを送信し てください 利用するクラス ESCPOSPrinter クラス または CPCLPrinter クラス 日本語を印刷したい場合は ESCPOSPrinter または CPCLPrinter の引数キャラクターセットに "Shift_JIS" を指定してください New USB インターフェース利用の場合 ESCPOSPrinter クラス または CPCLPrinter クラスをインスタンス化する際 第二引数に USBPortConnection を必ず指定してください 以下に一例を示します com.citizen.jpos.printer.escposprinter printer = new com.citizen.jpos.printer.escposprinter("iso-8859-1", musbportconnection); 13

4.3.1. コード例 ESC/POS コマンドを利用の場合 // 印刷 com.citizen.jpos.printer.escposprinter printer = new com.citizen.jpos.printer.escposprinter("iso-8859-1"); // テキストを印刷 printer.printnormal("barcode CODE39 :\n"); // CODE39 を印刷 printer.printbarcode("0123456789", CMPPrint.CMP_BCS_Code39, 8*10, 2, CMPPrint.CMP_ALIGNMENT_CENTER, CMPPrint.CMP_HRI_TEXT_BELOW); // 用紙を 5mm フィード printer.printnormal((char)escpos.esc + " 40uF\n"); catch (UnsupportedEncodingException e) { // エラー ESC/POS コマンドは 行単位で印刷処理を行います このため順次印刷処理が行われます 14

4.3.2. コード例 CPLC コマンドを利用の場合 // 印刷 com.citizen.jpos.printer.cpclprinter printer = new com.citizen.jpos.printer.cpclprinter("iso-8859-1"); // 用紙のフォームを設定 ( オフセット =0, 縦横解像度 =200dpi, ラベル長 =25mm, 印刷回数 =1 ) printer.setform(0, 200, 200, 8*25, 1); // 用紙の種類を設定 ( ラベル用紙 ) printer.setmedia(cpclconst.cmp_cpcl_label); // フォームへテキストを配置 printer.printcpcltext(cpclconst.cmp_cpcl_no_rotation, 5, 0, 30, 0, "CITIZEN SYSTEMS URL", 0); // フォームへ QRcode バーコードを配置 printer.printcpcl2dbarcode(cpclconst.cmp_cpcl_no_rotation, CPCLConst.CMP_CPCL_BCS_QRCODE, 30, 40, 4, 0, 1, 8, "http://citizen-systems.co.jp"); // 印刷開始 printer.printform(); catch (UnsupportedEncodingException e) { // エラー CPCL コマンドは ページ単位で印刷処理を行います このため 1 ページ分の印刷データの送信を完了するまで印刷処理が開始されません 15

4.4. 印刷データの送信完了を待つ アプリケーションは 印刷データを送信する各メソッド実行後 印刷データの送信の完了を確認するために printercheck() メソッドを実行してください 利用するクラス ESCPOSPrinter クラス または CPCLPrinter クラス 4.4.1. コード例コード例については プリンターステータスを取得確認 を参照してください 16

4.5. プリンターとの接続を切断する アプリケーションは 印刷の終了 あるいは 何らかのエラーが発生した後に disconnect() メソッドを実行して 接続を切断してください New USB インターフェース利用の場合 Bluetooth Wi-Fi インターフェースとは異なった処理が必要となります USBPortConnection クラスの close() メソッドを実行して接続を切断してください 利用するクラス BluetoothPort クラス または WiFiPort クラス または USBPortConnection クラス 4.5.1. コード例 Bluetooth インターフェース利用の場合 private com.citizen.port.android.bluetoothport port; // インスタンスを取得 port = com.citizen.port.android.bluetoothport.getinstance(); // 切断 port.disconnect(); catch (IOException e) { // エラー catch (InterruptedException e) { // エラー if ((hthread!= null) && (hthread.isalive())) { hthread.interrupt(); hthread = null; 17

4.5.2. コード例 Wi-Fi インターフェース利用の場合 private com.citizen.port.android.wifiport port; // インスタンスを取得 port = com.citizen.port.android.wifiport.getinstance(); // 切断 port.disconnect(); catch (IOException e) { // エラー catch (InterruptedException e) { // エラー if ((hthread!= null) && (hthread.isalive())) { hthread.interrupt(); hthread = null; 18

4.5.3. コード例 USB インターフェース利用の場合 if (musbportconnection!= null) { All New // 切断 musbportconnection.close(); musbportconnection = null; catch (InterruptedException e) { // エラー 19