3.1. StarIOPort

プリンターとの通信を行うためのクラスです。

  • メソッド

    名称

    説明

    getPort

    プリンターと通信するためのポートをオープンします。

    releasePort

    プリンターと通信するためのポートをクローズします。

    searchPrinter

    デバイスと接続可能なプリンターを検索します。

    writePort

    プリンターにデータを書き込みます。

    readPort

    プリンターからデータを読み込みます。

    retreiveStatus

    プリンターのステータスを取得します。

    beginCheckedBlock

    印刷終了監視を開始します。

    endCheckedBlock

    印刷終了監視を終了します。

    setEndCheckedBlockTimeoutMillis

    endCheckedBlock メソッドのタイムアウト値(ミリ秒指定)

    setHoldPrintTimeoutMillis

    用紙保持制御のタイムアウト時間を設定します。

    getFirmwareInformation

    プリンターのモデル名とファームウェアバージョンを取得します。

    getPortName

    ポートをオープンしたときのportNameを取得します。

    getPortSettings

    ポートをオープンしたときのportSettingsを取得します。

    getStarIOVersion

    StarIOライブラリのバージョン番号を取得します。

  • モデル:StarIOPort クラス

モデル/エミュレーション

mC-Print2 mC-Print3 mC-Label3 mPOP FVP10 TSP100IV TSP100IV SK TSP100IIIW TSP100IIIBITSP100IIIU TSP100ECO TSP100U TSP100GTTSP100LAN TSP650II TSP650IISK TSP700II TSP800IITUP500SM-S210i SM-S220i SM-S230i SM-T300i/T300 SM-T400i BSC10 SM-L200 SM-L300 SP700SK1-211/221/V211 SK1-211/221/V211 Presenter SK1-311/321/V311 SK1-311/V311 Presenter
StarPRNT StarPRNT StarPRNT StarPRNT StarLine StarPRNT StarPRNT StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarGraphic StarLine StarLine StarLine StarLine StarLine StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile StarPRNT EscPosMobile EscPos StarPRNT StarPRNT StarDotImpact StarPRNT StarPRNT StarPRNT StarPRNT

getPort

releasePort

searchPrinter

writePort

readPort

retreiveStatus

beginCheckedBlock

[1] [1]

endCheckedBlock

[1] [1]

setEndCheckedBlockTimeoutMillis

setHoldPrintTimeoutMillis

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

getFirmwareInformation

[2] [2][3] [2][3] [2][3] [2][3] [2][3] [2][3] [2][3] [2] [2] [2] [2] [2] [4] [2]

getPortName

getPortSettings

getStarIOVersion

[1]

SM-S220i はファームウェアバージョン 2.1 未満、SM-T300 はファームウェアバージョン 2.4 未満では印刷データ送信完了の確認はできますが、印刷終了監視はできません。

[2]

Apple AirMac シリーズを使用する場合、USBモデルは空文字を返します。

[3]

TSP100IIIU, TSP100U, TSP100GT, TSP100ECO の場合、モデル名は TSP100 になります。TSP100U, TSP100GT, TSP100ECO, TSP100LAN はファームウェアバージョンを取得できません。TSP100IIILAN, TSP100IIIW, TSP100IIIU はライブラリバージョン 2.2.7 以降が必要です。

[4]

ライブラリバージョン 2.2.3 以降が必要です。

3.1.1. 印刷処理フロー

次の印刷処理フローの手順に沿って印刷を行う方法を示します。

../_images/port_flow.png
  • 実装例

    StarIOPort port = null;
    
    try {
        // Port open
        port = StarIOPort.getPort(portName, portSettings, 10000, context);
    
        // Print end monitoring -Start
        StarPrinterStatus status = port.beginCheckedBlock();
    
        byte[] command = PrinterFunctions.createTextReceiptData(emulation, localizeReceipts, false);
    
        // Send print data
        port.writePort(command, 0, command.length);
    
        // Print end monitoring -End
        status = port.endCheckedBlock();
    
        // Status judgment during printing completion monitoring
        if (status.offline == false) {
            // Print successful end (Printer Online)
        }
        else {
            // Printing is abnormal termination (no paper, printer cover open etc)
            // Notify user
        }
    }
    catch (StarIOPortException e) {
        // Error
    }
    finally {
        try {
            // Port close
            StarIOPort.releasePort(port);
        }
        catch (StarIOPortException e) {}
    }
    

    Communication.javaを参照ください。

3.1.2. getPort

プリンターと通信するためのポートをオープンします。

  • 宣言

    public static StarIOPort getPort(String portName, String portSettings, int ioTimeoutMillis, Context context) throws StarIOPortException;
    
    @Deprecated
    public static StarIOPort getPort(String portName, String portSettings, int ioTimeoutMillis) throws StarIOPortException;
    
  • 引数

    名称

    説明

    portName

    プリンターと通信するためのポートを特定する文字列

    String

    portSettings

    プリンターとの接続設定情報

    String

    ioTimeoutMillis

    内部制御および各APIのタイムアウト時間

    int

    context

    コンテキスト

    android.content.Context

  • 戻り値

    説明

    StarIOPort オブジェクト

    StarIOPort

  • 例外

    説明

    ポートオープンに失敗したとき
    誤ったportNameを設定したとき

    StarIOPortException

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生したとき

    StarResultCode.FAILURE_IN_USE

    プリンターから接続拒否されたとき(他ホストが接続中など)

印刷の手順については 印刷処理フロー を参照ください。

  1. portName 引数

インターフェイス

portName

説明

ライブラリバージョン

Bluetooth BT:
最初に見つかったスタープリンタと通信します。
スタープリンタを1台のみペアリングして使用してください。
"BT:"2.2.0+
BT:Device Name

Bluetoothデバイス名で指定する場合

"BT:Star Micronics"2.2.2+
BT:BD Address

Bluetoothデバイスアドレスで指定する場合

"BT:00:12:F3:1E:2B:72"2.2.2+
Ethernet/Wireless LAN TCP:IP Address

IPアドレスで指定する場合

"TCP:192.168.1.100"2.2.2+
USB USB:
最初に見つかったスタープリンタと通信します。
プリンターをUSBで1台のみ接続して使用してください。
"USB:" 2.2.2+
USB:SN:USB Serial Number

USBシリアルナンバーで指定する場合

"USB:SN:1234ABCD" 2.2.2+
USB:searchPrinter Result
searchPrinter メソッドで検索した結果得られるPortName。
getPortName メソッドで取得できます。
"USB:1-3" 2.2.2+
USB/Bluetooth/LAN AutoSwitch:

インターフェイス自動切り替え機能 を使用する場合

"AutoSwitch:"2.9.0+
  • インターフェイス自動切り替え機能

    プリンターへ接続するためのポートを自動で検出する機能です。以下の優先順位で接続できるポートを検出します

    1. USB

    2. Bluetooth

    3. LAN

    本機能を使用するための手順は以下の通りです。

    1. Androidデバイス とプリンターをBluetoothもしくはLANで接続できる環境を構築

      • Androidデバイス とプリンターのBluetoothペアリングを行う

      • Androidデバイス とプリンターを同じネットワーク(同一セグメント)に接続する

    2. Androidデバイス とプリンターをUSBで接続

    3. portNameに"AutoSwitch:"を指定し、本メソッドを実行

    4. Androidデバイス とプリンターとのUSB接続が正常である場合は、3の手順に成功します。失敗した場合は Androidデバイス とプリンターのUSB接続をご確認の上、再度3の手順をやり直してください。

    5. 以降、引き続きportNameに"AutoSwitch:"を指定することで、 Androidデバイス とプリンターがUSBで接続されていない場合でも自動で他のインターフェイスと接続されます。

    使用するプリンターを変更する場合は、1の手順からやり直してください。

    本機能の使用が推奨されるケースは以下の通りです。

    • USBを含む複数のインターフェイスを使用可能な環境を構築することができる

    • 運用中に接続先インターフェイスが頻繁に変更される場合

    • プログラム上で接続先ポートを意識したくない場合

    重要

    • プリンターのUSBシリアルナンバー設定は有効に設定してください。

    • 接続先プリンター以外のプリンターとのUSB接続、またBluetoothペアリング設定をしないようにしてください。

    • LANインターフェイスを使用する場合は、UDP通信ポート22222を使用できる環境を構築してください。

    警告

    • 本機能を使用することにより、ポートを直接指定するよりも印字開始までの時間が遅くなるなどの場合があります。

    本機能をサポートするモデルは以下の通りです。

    モデル

    ファームウェアバージョン

    mC-Print2 1.0+
    mC-Print3 1.0+
    mC-Label3 1.0+
    TSP100IV 1.0+
    TSP100IV SK 1.0+

    警告

    • MCP20/MCP30は除く

  1. portSetting 引数

    portSettings文字列は、以下のフォーマットで指定してください。

    各モデルで適用すべき識別子 + セミコロン(';')区切りのオプション指定文字列

    各モデルで適用すべき識別子は下表のとおりです。

    モデル

    エミュレーション

    識別子

    mC-Print2 StarPRNT ""
    mC-Print3 StarPRNT ""
    mC-Label3 StarPRNT ""
    mPOP StarPRNT ""
    FVP10 StarLine ""
    TSP100IV StarPRNT ""
    TSP100IV SK StarPRNT ""
    TSP100IIIW StarGraphic ""
    TSP100IIIBI StarGraphic ""
    TSP100IIIU StarGraphic ""
    TSP100IIU+ StarGraphic ""
    TSP100ECO StarGraphic ""
    TSP100U StarGraphic ""
    TSP100GT StarGraphic ""
    TSP100LAN StarGraphic ""
    TSP650II StarLine ""
    TSP650IISK StarLine ""
    TSP700II StarLine ""
    TSP800II StarLine ""
    TUP500 StarLine ""
    SM-S210i StarPRNT "Portable"
    EscPosMobile"Portable;escpos" or "mini"
    SM-S220i StarPRNT "Portable"
    EscPosMobile"Portable;escpos" or "mini"
    SM-S230i StarPRNT "Portable"
    EscPosMobile"Portable;escpos" or "mini"
    SM-T300i/T300 StarPRNT "Portable"
    EscPosMobile"Portable;escpos" or "mini"
    SM-T400i StarPRNT "Portable"
    EscPosMobile"Portable;escpos" or "mini"
    BSC10 EscPos "escpos"
    SM-L200 StarPRNT "Portable"
    SM-L300 StarPRNT "Portable"
    SP700 StarDotImpact ""
    SK1-211/221/V211 StarPRNT ""
    SK1-211/221/V211 Presenter StarPRNT ""
    SK1-311/321/V311 StarPRNT ""
    SK1-311/V311 Presenter StarPRNT ""

    オプション指定文字列は下表のとおりです。

    インターフェイス

    オプション指定文字列

    説明

    ライブラリバージョン

    Bluetooth

    d[数値]

    データタイムアウト機能のタイムアウト値設定を行います。

    データタイムアウト機能をサポートするモデルで本オプションを指定しない場合は、データタイムアウト機能は有効で、タイムアウト値は3秒に設定されます。

    タイムアウト時間の指定方法は、以下のとおりです。

    1. [数値]に1から255を指定した場合:[数値]に指定した時間(単位:秒)

    2. [数値]に0を指定した場合:データタイムアウトを無効にする

    3. 上記以外の場合:3秒

    "d10"2.2.2+

    l[数値](Lの小文字)

    接続のリトライをおこないます。

    リトライ時間の指定方法は、以下のとおりです。

    1. 数値を指定しない場合("l"のみ): getPort メソッドで指定したtimeout時間

    2. [数値]に0から300000を指定した場合:[数値]に指定した時間(単位:ミリ秒)

    3. [数値]に300001以上の値を指定した場合:getPortメソッドで指定したtimeout時間

    4. 上記以外の場合:リトライしない設定となります

    "l10000"2.2.2+
    Ethernet/Wireless LAN

    l[数値](Lの小文字)

    対象のプリンターが他ホストから使用中の場合に接続をリトライします。

    リトライ時間の指定方法は、以下のとおりです。

    1. 数値を指定しない場合("l"のみ): getPort メソッドで指定したtimeout時間

    2. [数値]に0から300000を指定した場合:[数値]に指定した時間(単位:ミリ秒)

    3. [数値]に300001以上の値を指定した場合: getPort メソッドで指定したtimeout時間

    4. 上記以外の場合:リトライしない設定となります

    "l10000"2.3.0+

    [ポート番号]

    ポート番号(AirMac使用時のみ)

    "9100"2.2.2+
    • データタイムアウト機能

      データタイムアウト機能とは、印刷中に指定した時間プリンターに対してデータが送られなかった場合に、残りの印字データを無視する機能です。
      この機能により、データ送信中にBluetooth接続が切断された場合に、次回の印刷が不正な内容になることを防ぐことができます。
      このオプションをサポートするモデルは以下のとおりです。

      モデル

      ファームウェアバージョン

      mC-Print2

      1.0+

      mC-Print3

      1.0+

      mC-Label3

      1.0+

      mPOP

      1.0+

      FVP10

      2.0+

      TSP100IIIBI

      1.0+

      TSP650II

      2.0+

      TSP650IISK

      1.0+

      TSP700II

      5.0+

      TSP800II

      2.0+

    • portSettingsの引数指定例

    プリンター接続環境

    指定すべきportSettings

    TSP650IIをデフォルト設定で使用する

    ""

    mC-Print3をEthernetインターフェイスで、リトライ有効で使用する

    ";l10000"

    SM-L200をデフォルトで使用する

    "Portable"

    TSP650IIのBluetoothインターフェイスで、印刷中に10秒間データが送られなかった場合にデータキャンセル機能を動作させる

    ";d10"

  1. ioTimeoutMillis 引数

    ioTimeoutMillis引数は、ミリ秒のタイムアウト値で、内部制御とAPIでの通信に使用されるものです。 このパラメーターは、APIが制限された時間内で完了することを保証しますが、 正確なタイムアウトの長さを保証するものではありません。

    指定した時間が10秒未満の場合、タイムアウトは10秒になります。

    portSettingsパラメーターで[データタイムアウト機能のタイムアウト値設定]を行う場合、 ioTimeoutMillis引数の値をデータタイムアウト機能のタイムアウト値の指定時間より3秒以上長くなるように設定してください。 3秒未満に設定した場合、内部制御により endCheckedBlock メソッドのタイムアウト時間は自動的に3秒長くなるように設定されます。

  1. Apple AirMacシリーズのプリンター共有機能をご使用の場合

    portNameには、AirMac シリーズのIPアドレスを指定してください。

    例): TCP:192.168.1.2

    portSettingsには、ポート番号を指定します。

    91009109 "を順に指定し、接続に成功した値をご使用ください。

  1. getPortリトライフロー

    Bluetoothプリンターを使用する場合、 Androidデバイス や使用環境によってgetPortが失敗し、 Androidデバイス との接続ができず印刷やステータス取得ができない場合があります。

    getPortに失敗した場合、例外StarIOPortExceptionが発生します。 その際は、下記手順2.と3.を繰り返す処理を行ってください。

    ../_images/get_port_retry_flow.png
    1. getPortが失敗し、StarIOPortExceptionが発生する

    2. 一定時間(例:500ミリ秒)待機する

    3. 再度getPortを実行する

    4. getPortに成功した場合、印刷やステータス取得などの処理に進みます

    重要

    待機する秒数やgetPortメソッドの繰り返し回数は、 Androidデバイス や使用環境によって異なります。 十分な検証を行ったうえで、適切な値を設定してください。

3.1.3. releasePort

プリンターと通信するためのポートをクローズします。

  • 宣言

    public static void releasePort(StarIOPort port);
    
  • 引数

    名称

    説明

    port

    以前に getPort メソッドにより作成された StarIOPort オブジェクト

    StarIOPort

  • 戻り値

    なし

印刷の手順については 印刷処理フロー を参照ください。

重要

  1. 注意事項

    プリンターとデータ通信しない時は、本メソッドを呼び出し、ポートをクローズしてください。 ポートをオープンにしたままにしておくと、以降のポートオープンの呼び出し要求が失敗する可能性があります。

  2. 有線/無線LANインターフェイスを使用する場合の注意事項

    本メソッド実行後すぐに getPort メソッドを実行すると失敗する可能性があります。

    本メソッド実行後、500ミリ秒の時間をおいてから getPort メソッドを実行してください。

  3. 互換性に関する注意事項

    StarIOPort3.1.jar バージョン2.6.0(StarPRNT SDK バージョン5.11.0同梱)より、挙動が以下のように変更されています。

    • StarIOPort3.1.jar バージョン2.5.0以前

      releasePortメソッドを呼ぶ前にgetPortメソッドを複数回呼んだ場合は、 getPortメソッドを呼んだ回数分releasePortメソッドを呼ぶことでポートがクローズされます。

    • StarIOPort3.1.jar バージョン2.6.0以後

      releasePortメソッドを呼んだ場合は、 getPortメソッドを呼んだ回数に関わらず必ずポートがクローズされます。

3.1.4. searchPrinter

Starプリンターを検索し、検索結果を返します。

  • 宣言

    public static ArrayList<PortInfo> searchPrinter(String target, Context context) throws StarIOPortException;
    public static ArrayList<PortInfo> searchPrinter(String target) throws StarIOPortException;
    
  • 引数

    名称

    説明

    target

    検索したいスター精密製プリンターのインターフェイス(I/F)を指定する文字列
    * Bluetooth I/Fの場合: BT:
    * Ethernet/Wireless LAN I/Fの場合: TCP:
    * USB I/Fの場合: USB:

    StarIOPort

    context

    コンテキスト
    targetに USB: を指定する場合に必要です。

    android.context.Context

  • 戻り値

    説明

    スター精密製プリンターの検索結果
    取得できる情報につきましては、 PortInfo クラスをご参照ください。

    ArrayList<PortInfo>

  • 例外

    説明

    ポートオープンに失敗した
    誤ったtargetを引数に設定した

    StarIOPortException

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

  • 実装例

    try {
        //Searches for an Ethernet / Wireless LAN interface Star printer on the same network.
        List<PortInfo> portList = StarIOPort.searchPrinter("TCP:");
    
        for (PortInfo port : portList) {
            Log.i ("LOG", "Port Name: " + port.getPortName());
            Log.i ("LOG", "MAC Address: " + port.getMacAddress());
            Log.i ("LOG", "Model Name: " + port.getModelName());
        }
    }
    catch (StarIOPortException e) {
        // An error occurred.
    }
    

    SearchPortFragment.javaを参照ください。

重要

  1. USBプリンターを接続し直した場合

    USBプリンターを接続し直した際は、再度本メソッドを実行し、最新のプリンター情報を取得してください。

  2. 制限事項

    本メソッドはデバイスを確実に検出することを保証するものではありません。

  3. Android 7.0以降での制限事項

    Android 7.0以降では、本メソッドで得られるプリンター情報のうち、PortName(USB:1-3等)はUSBプリンターの再接続によって変化します。

3.1.5. writePort

プリンターにデータを書き込みます。

  • 宣言

    public void writePort(byte[] writeBuffer, int offset, int size) throws StarIOPortException;
    
  • 引数

    名称

    説明

    writeBuffer

    書き込みたいデータを格納するbyte配列

    byte[]

    offset

    writeBufferのどの位置から書き込み始めるかを指定するインデックス

    int

    size

    書き込むbyte数

    int

  • 戻り値

    なし

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

印刷の手順については 印刷処理フロー を参照ください。

3.1.6. readPort

プリンターからデータを読み込みます。 プリンターからRaw byteを読み込む必要がある場合のみ、本メソッドをご使用ください。

  • 宣言

    public void readPort(byte[] readBuffer, int offset, int size) throws StarIOPortException;
    
  • 引数

    名称

    説明

    readBuffer

    データが読み込まれるbyte配列

    byte[]

    offset

    readBufferにデータを書き込み始めるインデックス

    int

    size

    読み込むbyte数

    int

  • 戻り値

    説明

    実際に受信できたバイト数
    データを全て受信できなかった場合でも、本メソッドは成功します。アプリケーションは、期待するデータが全て受信できるまで本メソッドを複数回呼び出すか、しきい値に達するまで再試行する必要があります。

    int

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

重要

USB接続でご利用時の制限事項

プリンターから512バイト以上の応答が発生する場合、本メソッドの引数readBufferおよびsizeは512バイト以上を指定してください。

512バイト未満を指定した場合、応答を読み込めない場合があります。

3.1.7. retreiveStatus

プリンターのステータスを取得します。

  • 宣言

    public StarPrinterStatus retreiveStatus() throws StarIOPortException;
    
  • 引数

    なし

  • 戻り値

    説明

    現在のプリンターステータス
    取得できるステータスの種類は、 StarPrinterStatus 構造体をご参照ください。

    StarPrinterStatus

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

  • 実装例

    if (status.offline == false) {
        // Printer OnLine
        if (status.paperDetectionError == true) {
            // Paper detection error
        }
        if (status.compulsionSwitch == true) {
            // Cashdrawer Open
        }
        else {
            // Cashdrawer Close
        }
    }
    else {
        // Printer Offline
    }
    

    Communication.javaを参照ください。

3.1.8. beginCheckedBlock

endCheckedBlock メソッドとセットで使用し、印刷終了を監視します。

最後まで正しく印刷されたか確認したい場合、印刷データ送信の直前に本メソッドを、 印刷データ送信の直後に endCheckedBlock メソッドをそれぞれ実行します。

用紙保持制御を行う場合、本メソッドは用紙が抜き取られるまでブロックし、抜き取られると制御を返します。 setHoldPrintTimeoutMillis で指定したタイムアウト時間内に用紙が抜き取られない場合、エラーとなります。

  • 宣言

    public StarPrinterStatus beginCheckedBlock() throws StarIOPortException;
    
  • 引数

    なし

  • 戻り値

    説明

    現在のプリンターステータス
    取得できるステータスの種類は、 StarPrinterStatus 構造体をご参照ください。

    StarPrinterStatus

  • 例外

    説明

    通信エラーが発生したとき
    プリンターがオフライン状態のとき

    StarIOPortException

  • エラーコード

    説明

    ライブラリバージョン

    StarResultCode.FAILURE_PAPER_PRESENT

    用紙保持制御のタイムアウトが発生した

    2.7.0+

    StarResultCode.FAILURE

    何らかのエラーが発生した

    2.2.2+

  • 実装例

    beginCheckedBlock / endCheckedBlock による印刷終了監視処理の手順は、印刷処理フロー を参照ください。

3.1.9. endCheckedBlock

beginCheckedBlock メソッドとセットで使用し、印刷終了の監視を行います。

プリンターの状態を監視し、送信した印刷データの印刷が正常に完了する、印刷途中にプリンターの状態がオフラインになる、 setEndCheckedBlockTimeoutMillis で指定したタイムアウトが経過しエラーが発生すると、 制御を返します。印刷データ以外を送信した場合は、そのコマンドがプリンターで処理されると制御を返します。

  • 宣言

    public StarPrinterStatus endCheckedBlock() throws StarIOPortException;
    
  • 引数

    なし

  • 戻り値

    説明

    現在のプリンターステータス
    取得できるステータスの種類は、 StarPrinterStatus 構造体をご参照ください。

    StarPrinterStatus

  • 例外

    説明

    通信エラーが発生したとき
    タイムアウト時間内にプリンターからの応答がないとき

    StarIOPortException

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

  • 実装例

    beginCheckedBlock / endCheckedBlock による印刷終了監視処理の手順は、印刷処理フロー を参照ください。

3.1.10. setEndCheckedBlockTimeoutMillis

endCheckedBlock メソッドのタイムアウト時間を指定します。(単位:ミリ秒)

印刷に時間がかかる場合、この値を大きくする事で endCheckedBlock メソッドの印刷完了待ち時間を伸ばす事ができます。

  • 宣言

    public void setEndCheckedBlockTimeoutMillis(int endCheckedBlockTimeoutMillis);
    
  • 引数

    名称

    説明

    endCheckedBlockTimeoutMillis

    endCheckedBlock メソッドのタイムアウト時間(ミリ秒指定)

    int

  • 戻り値

    なし

重要

endCheckedBlock メソッドのタイムアウト時間の初期値は、getPort メソッドの引数で指定したタイムアウト時間と同じになります。指定した時間が10秒未満の場合、タイムアウトは10秒になります。

また、getPort メソッドのportSettingsパラメータで"データタイムアウト機能の設定"を使用する場合、本メソッドで設定するタイムアウト時間には、データタイムアウト機能の指定時間より3秒以上長くなるように設定してください。 3秒未満に設定した場合、内部制御により自動的に3秒長くなるように設定されます。

3.1.11. setHoldPrintTimeoutMillis

added in version 2.7.0

用紙保持制御のタイムアウト時間を示します。(単位:ミリ秒)

  • 宣言

    public void setHoldPrintTimeoutMillis(int holdPrintTimeoutMillis);
    
  • 引数

    名称

    説明

    holdPrintTimeoutMillis

    用紙保持制御のタイムアウト時間(ミリ秒指定)

    int

  • 戻り値

    なし

3.1.12. getFirmwareInformation

プリンターのモデル名とファームウェアバージョンを取得します。

  • 宣言

    public Map<String, String> getFirmwareInformation() throws StarIOPortException;
    
  • 引数

    なし

  • 戻り値

    説明

    ファームウェア情報を含むMap型オブジェクト

    戻り値のMap型オブジェクトのキーに"ModelName"を設定することでモデル名を、"FirmwareVersion"を設定することでファームウェアバージョンを取得できます。

    Map<String, String>

  • エラーコード

    説明

    StarResultCode.FAILURE

    何らかのエラーが発生した

  • 実装例

    try {
        Map<String, String> firmwareInformationMap = port.getFirmwareInformation();
    
        Log.i ("LOG", "Model Name: " + firmwareInformationMap.get("ModelName"));
        Log.i ("LOG", "Firmware Version: " + firmwareInformationMap.get("FirmwareVersion"));
    }
    catch (StarIOPortException e) {
        // Error
    }
    

    DeviceStatusFragment.java および Communication.java をご参照ください。

3.1.13. getPortName

getPort メソッドで指定したportNameを取得します。

  • 宣言

    public String getPortName();
    
  • 引数

    なし

  • 戻り値

    説明

    getPort メソッドに渡したportName引数

    String

3.1.14. getPortSettings

getPort メソッドで指定したportSettingsを取得します。

  • 宣言

    public String getPortSettings();
    
  • 引数

    なし

  • 戻り値

    説明

    getPort メソッドに渡したportSettings引数

    String

3.1.15. getStarIOVersion

StarIOライブラリのバージョンを取得します。

  • 宣言

    public String getStarIOVersion();
    
  • 引数

    なし

  • 戻り値

    説明

    StarIOライブラリのバージョン文字列

    String