StarXpand SDK for iOS / Android 開発者向けマニュアル Ver. 1.14.0

最終更新日: 2026年 9月 15日

キャッシュドロアーを使う

手順や参照先はOSによって異なります。表示するOSを選択してください。

iOS Android


キャッシュドロアーを使う処理について、StarPRNT SDKとStarXpand SDKの構成を説明します。

両SDKの違いを確認しStarXpand SDKへの移行を行ってください。


StarPRNT SDK

印刷データを作成するにおいて、appendPeripheral()メソッドを使用するとキャッシュドロアーオープンを行う印刷データが生成されます。
サンプルコード: ApiFunctions.swift (GitHub)のcreatePeripheralData()メソッドをご参照ください。
キャッシュドロアーの状態を監視するには、プリンターの状態を監視する同様、StarIoExtManagerクラスのdelegateプロパティにStarIoExtManagerDelegateプロトコルに適合するインスタンスをセットします。
この状態でconnect()を行うと、キャッシュドロアーの開閉状態が変化した際に以下のデリゲートメソッドが実行されます。
func didCashDrawerOpen(_ manager: StarIoExtManager!) {
    print("Cash Drawer: Open")
}

func didCashDrawerClose(_ manager: StarIoExtManager!) {
    print("Cash Drawer: Close")
}

サンプルコード(GitHub)


StarXpand SDK

キャッシュドロアーを開くには、印刷データを作成するにおいてDrawerBuilderクラスのインスタンスを生成し、actionOpen()メソッドを使用します。
このインスタンスを、DocumentBuilderインスタンスのaddDrawer()メソッドの引数として渡します。
サンプルコード(GitHub)

キャッシュドロアーの状態を監視するには、StarPrinter.drawerDelegateプロパティに、DrawerDelegateプロトコルに準拠したオブジェクトをセットします。
この状態でopen()を行うと、プリンターに接続されているキャッシュドロアーの開閉状態が変化した際に対応するデリゲートメソッドが実行されます。
func drawer(printer: StarPrinter, communicationErrorDidOccur error: Error) {
    print("Drawer: Communication Error")
}

func drawer(printer: StarPrinter, didSwitch openCloseSignal: Bool) {
    print("Drawer: Open Close Signal Switched: \(openCloseSignal)")
}

キャッシュドロアーのイベントに対応するデリゲートメソッドは以下の通りです。
サンプルコード(GitHub)

各APIのStarPRNT SDKとStarXpand SDKへの対応状況は、対応API一覧をご確認ください。

キャッシュドロアーを使う処理について、StarPRNT SDKとStarXpand SDKの構成を説明します。

両SDKの違いを確認しStarXpand SDKへの移行を行ってください。


StarPRNT SDK

印刷データを作成するにおいて、appendPeripheral()メソッドを使用するとキャッシュドロアーオープンを行う印刷データが生成されます。
サンプルコード: ApiFunctions.java (GitHub)のcreatePeripheralData()メソッドをご参照ください。
キャッシュドロアーの状態を監視するには、プリンターの状態を監視する同様、StarIoExtManagerクラスのコンストラクタでIStarIoExtManagerListenerインターフェースを実装したインスタンスを指定します。
この状態でconnect()を行うと、ドロアーの開閉状態が変化した際に以下のリスナーメソッドが実行されます。
override fun onCashDrawerOpen() {
    Log.d(TAG, "Cash Drawer: Open")
}

override fun onCashDrawerClose() {
    Log.d(TAG, "Cash Drawer: Close")
}

サンプルコード(GitHub)


StarXpand SDK

キャッシュドロアーを開くには、印刷データを作成するにおいてDrawerBuilderクラスのインスタンスを生成し、actionOpen()メソッドを使用します。
このインスタンスを、DocumentBuilderインスタンスのaddDrawer()メソッドの引数として渡します。
サンプルコード(GitHub)

キャッシュドロアーの状態を監視するには、StarPrinter.drawerDelegateプロパティに、DrawerDelegateインターフェースを実装したオブジェクトをセットします。
この状態でopenAsync()を行うと、プリンターに接続されているドロアーの開閉状態が変化した際に対応するコールバックメソッドが実行されます。
override fun onCommunicationError(e: StarIO10Exception) {
    Log.d(TAG, "Drawer: Communication Error")
}

override fun onOpenCloseSignalSwitched(openCloseSignal: Boolean) {
    Log.d(TAG, "Drawer: Open Close Signal Switched: $openCloseSignal")
}

キャッシュドロアーのイベントに対応するコールバックメソッドは以下の通りです。
サンプルコード(GitHub)

各APIのStarPRNT SDKとStarXpand SDKへの対応状況は、対応API一覧をご確認ください。