Biz/Browser HTと外部サービスを連携する機能「ExternalService」クラスを用いて使用することができるメソッドの一覧です。
サービスの使い方については、Biz/Browser HTのExternalServiceクラスのリファレンスも参照してください。
※正しく動作させるためには、端末のOSバージョンを最新にする必要があります。
本モジュールとリファレンスについて
メーカ |
対応機種 |
サービスID値 |
バージョン |
Biz/Browserの対応バージョン |
|---|---|---|---|---|
|
Newland |
MT93 |
jp.co.opst.biz.util.poweruptool.newlandpoweruptool/.MainService |
v1.0.0 |
v1.4.1以上 |
※掲載されている会社名や製品名は、一般に各社の商標または登録商標です。
使用例
/* 本端末制御モジュール専用サービスID(本サービスにおいて固定値) */
String SERVICE_ID = "jp.co.opst.biz.util.poweruptool.newlandpoweruptool/.MainService";
/* メソッド名称 */
String METHOD_NAME = "playBuzzer";
ExternalService sv{
Function OnBoundStateChanged(e){
if(e.state == "Bound"){
//.Messagebox("サービスと接続しました");
}
}
}
Button btn1{
Function OnTouch(e){
^.sv.bind(^.SERVICE_ID);
}
}
Button btn2{
Function OnTouch(e){
^.sv.invoke(^.METHOD_NAME, 7, 2000);
}
}
【注意事項】
MT93において、アプリ「DuraSpeed(※)」が有効になっていると、下記動作不具合を起こすことが判明しています。
※DuraSpeedとは、バックグラウンドアプリを制限することで、フォアグラウンドアプリを高速化するアプリケーションです。
●下記条件時に端末制御モジュールのサービスプロセスがDuraSpeedにキルされる。
端末制御モジュールをUnBind状態で、端末をスリープ状態にし、5分以上経過した場合。
●下記条件時にBiz/Browser HTから端末制御モジュールへのBindが失敗する。
・手動でアプリ情報の「強制停止」から端末制御モジュールを強制終了した場合
・端末制御モジュールのプロセスが強制終了した場合(DuraSpeedによりキルされた場合も含む)
・端末制御モジュールを上書きインストールした場合
端末制御モジュールを使用する際は、以下の手順でDuraSpeedをOFFに設定してください。
(1)OS設定>DuraSpeedを開く
(2)OFFに切り替える(以降、ONに切り替えない限りは恒常的に維持されます)
| メソッド名 | 概要 |
|---|---|
| startScanBarcode | バーコードの読み取り処理を行い、読み込んだバーコードのデータおよび種別を返します。 |
| startScanBarcodeContinuous | 連続スキャンを開始します。 |
| stopScanBarcode | 連続スキャンを終了します。 |
| setNotificationBuzzer | 端末の各種通知音の有効・無効を設定します。 |
| setNotificationVibrator | 端末の各種通知バイブレータの有効・無効を設定します。 |
| setCharsetEncoding | スキャン結果データのエンコードを設定します。 |
| setBarcodeEnabled | 指定したバーコードを読み取り対象にするかどうかを指定します。 |
| ReadBarcodeイベント | 連続スキャンでバーコードを読み取ったときに発生します。 |
|
説明 |
バーコードの読み取り処理を行い、読み込んだバーコードのデータおよび種別を返します。 バーコードの読み取りに成功するかタイムアウト時間が経過するまでスキャンを行います。 スキャンが終了し、このメソッドが結果を返すまで処理は戻りません。
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
呼出形式 |
var res = extsv.invoke("startScanBarcode", timeoutMs);
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
戻り値 |
以下の3つの要素を持つ連想配列のArrayオブジェクト
integer type バーコードの種類 String data バーコードのデータの文字列表現 String rawdata バーコードのデータの生データ(バイト列)をBase64エンコードした文字列(※) ※Biz/BrowserのBase64Decoderクラスを用いてBase64デコードすることでバイナリデータを復元することができます。 読み込むバーコードに日本語の文字を含む場合や、バイナリデータを含む場合に使用できます。
バーコードの種類はそれぞれ下記に対応しています。 ※読み取るバーコード種別などのスキャン設定は、端末制御モジュール初期化のたびに端末デフォルト値に戻ります。
※GS1 Composite(CC-A/B/C)が有効になっている場合、以下のバーコード種別についてスキャンが無効になります。 EAN-13(JAN-13) / EAN-8(JAN-8) / UPC-E / UPC-A
※ISBTは"CODE-128(11)"として識別されます。
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
引数 |
integer timeoutMs |
スキャンのタイムアウト時間[msec]。0以下の値を設定するとデフォルトの時間だけ待機します。
|
||||||||||||||||||||||||||||||||||||||||||||||
|
使用例 |
var res = extsv.Invoke("startScanBarcode", 3000);
//.MessageBox("データ:" + res[0]["data"] + "/種類:" + Str(res[0]["type"]) + "/生データ:" + Base64Decoder.Convert(res[0]["rawdata"]));
|
|||||||||||||||||||||||||||||||||||||||||||||||
|
説明 |
連続スキャンを開始します。 バーコードを読み取ると、ExternalServiceオブジェクトからReadBarcodeイベントが発生します。 読み取ったバーコードのデータはReadBarcodeイベントから取得することができます。 連続スキャンを停止する場合は、stopScanBarcodeメソッドを呼び出します。
※読み取るバーコード種別などのスキャン設定は、端末制御モジュール初期化のたびに端末デフォルト値に戻ります。
|
|
|
呼出形式 |
extsv.invoke("startScanBarcodeContinuous", sameInterval);
|
|
|
戻り値 |
なし
|
|
|
引数 |
integer sameInterval |
同一バーコードの二度読み防止時間を、100ミリ秒単位で指定します。
|
|
使用例 |
ExternalService exs{
Function OnReadBarcode(e){
^.Label1.value = e.type + " : " + e.data ;
}
}
Button Button51 {
X = 199;
Y = 333;
Width = 80;
Height = 54;
Title = "スキャン開始";
Function OnTouch( e ) {
var res = ^.exs.Invoke("startScanBarcodeContinuous", 3);
}
}
|
|
|
説明 |
連続スキャンを終了します。
|
|
|
呼出形式 |
extsv.invoke("stopScanBarcode");
|
|
|
戻り値 |
なし
|
|
|
引数 |
なし |
|
|
説明 |
端末の各種通知音の有効・無効を設定します。デフォルトは有効です。
|
|
|
呼出形式 |
extsv.invoke("setNotificationBuzzer", enabled);
|
|
|
戻り値 |
なし
|
|
|
引数 |
boolean enabled |
通知音を有効にするかどうか。
|
|
説明 |
端末の各種通知バイブレータの有効・無効を設定します。デフォルトは有効です。
|
|
|
呼出形式 |
extsv.invoke("setNotificationVibrator", enabled);
|
|
|
戻り値 |
なし
|
|
|
引数 |
boolean enabled |
通知バイブレータを有効にするかどうか。
|
説明 |
読み取ったバーコードのデータを、どの文字コードでエンコードするかを指定します。デフォルトはUTF-8です。 各種読み取りで取得したバーコードデータの文字列表現について、読み取ったデータを規定の文字エンコード設定でエンコードします。 データと設定のエンコードが異なるとき、文字化けすることがあります。
|
|||||||||||||
呼出形式 |
extsv.invoke("setCharsetEncoding", charset);
|
|||||||||||||
戻り値 |
なし
|
|||||||||||||
引数 |
String charset |
エンコード設定。以下から値を指定します。大文字小文字は区別しません。また、記号の一部など表記揺れにも対応します。
|
||||||||||||
|
説明 |
指定したバーコードを読み取り対象にするかどうかを指定します。
|
|||||||||||||||||||||||||||||||||||||||||||||
|
呼出形式 |
extsv.invoke("setBarcodeEnabled", type, enabled);
|
|||||||||||||||||||||||||||||||||||||||||||||
|
戻り値 |
なし
|
|||||||||||||||||||||||||||||||||||||||||||||
|
引数 |
integer type |
設定を行うバーコードの種類を指定します。 バーコードの種類はそれぞれ下記に対応しています。
※CODE-39、CODE-32の設定は共通となります。 ※GS1 Composite(CC-A/B/C)が有効になっている場合、以下のバーコード種別についてスキャンが無効になります。 EAN-13(JAN-13) / EAN-8(JAN-8) / UPC-E / UPC-A
※ISBTは"CODE-128(11)"として識別されます。
|
||||||||||||||||||||||||||||||||||||||||||||
|
|
boolean enabled |
読み取りを行う場合は$TRUEを、読み取りを行わない場合は$FALSEを指定します。
|
||||||||||||||||||||||||||||||||||||||||||||
説明 |
連続スキャンでバーコードを読み取ったときに発生します。
Eventオブジェクトには以下の子オブジェクトが付加されています。
|
|||||||||||||