           Long  Range  Barcode  GunSDK リファレンス  ASR-­R202G  Asterisk,  Inc.  
Dalian  Mingrixing  Technology  Co.,  Ltd.    Long  Range  Barcode  Gun  SDK   開発マニュアル  更新履歴  バージョン  変更内容  担当者  日付  1.0  新規作成  李丹  2019/9/9                                                                                        Page2  Long  Range  Barcode  Gun  SDK   開発マニュアル  目	  次    1.

概要  .................................................................................................................................  5

2.

LongRange2D クラス  .....................................................................................................  6

2.1.
Property  .......................................................................................................................  62.1.1.
longRange2DDevice  ............................................................................................  62.1.2.
beep  .....................................................................................................................  62.1.3.
vibrator  .................................................................................................................  62.1.4.
sleepTime  ............................................................................................................  62.1.5.
autoOffTime  .........................................................................................................  72.1.6.
scannerTimeOut  ..................................................................................................  7
2.2.
メソッド  ......................................................................................................................  72.2.1.
initWithLongRange2DDevice  ...............................................................................  72.2.2.
disconnect  ............................................................................................................  72.2.3.
setDelegate  ..........................................................................................................  82.2.4.
getFirmwareVersion  .............................................................................................  82.2.5.
getSerialNumber  ..................................................................................................  82.2.6.
getBatteryStatus  ..................................................................................................  82.2.7.
getAction  ..............................................................................................................  82.2.8.
startScan  ..............................................................................................................  92.2.9.
stopScan  ..............................................................................................................  92.2.10. setBarcodeParam  ................................................................................................  92.2.11. getBarcodeParam  ................................................................................................  92.2.12. startBeepWithBeepTime  ....................................................................................  102.2.13. startVibratorWithVibratorTime  ............................................................................  102.2.14. setDefaultScannerPrama  ...................................................................................  112.2.15. updateFirmwareWithFileName  ..........................................................................  112.2.16. getMessageWithResultCode  .............................................................................  11
3.

LongRange2DDeviceClass  .........................................................................................  12

3.1.
プロパティ  .................................................................................................................  123.1.1.
delegate  .............................................................................................................  123.1.2.
deviceModel  .......................................................................................................  123.1.3.
isConnect  ...........................................................................................................  12
3.2.
メソッド  ....................................................................................................................  133.2.1.
initWithDeviceModel  ..........................................................................................  133.2.2.
getAddress  .........................................................................................................  133.2.3.
disconnect  ..........................................................................................................  133.2.4.
getSDKVersion  ..................................................................................................  13
4.

LongRange2DParamValue  ..........................................................................................  14

4.1.
プロパティ  .................................................................................................................  144.1.1.
paramName  .......................................................................................................  144.1.2.
value  ..................................................................................................................  14
4.2.
メソッド  ....................................................................................................................  144.2.1.
setEnabled  .........................................................................................................  14
5.

LongRange2DResultData  ...........................................................................................  15Page3  Long  Range  Barcode  Gun  SDK   開発マニュアル  5.1.
メソッド  ....................................................................................................................  155.1.1.
initWithResultCode  ............................................................................................  155.1.2.
result  ..................................................................................................................  155.1.3.
mData  ................................................................................................................  15
6.

デリゲートインタフェース  ...........................................................................................  16

6.1.
LongRange2DDelegate  .............................................................................................  166.1.1.
longRange2DInitialized  ......................................................................................  166.1.2.
updateDeviceState  ............................................................................................  166.1.3.
changedActionState  ...........................................................................................  176.1.4.
receivedBarcodeString  ......................................................................................  176.1.5.
receivedBarcodeData  ........................................................................................  176.1.6.
onAsReaderTriggerKeyEvent  ............................................................................  18
7.

列挙型  ............................................................................................................................  19

7.1.
7.2.
7.3.
7.4.    ResultCode  ................................................................................................................  19BeepState  ..................................................................................................................  20VibratorState  ..............................................................................................................  20ParamName  ...............................................................................................................  20  Page4  Long  Range  Barcode  Gun  SDK   開発マニュアル  1.  概要  本マニュアルについて：  1.   LongRangeSDK の API・プロパティ等のリファレンスとなります。  
開発ツール：Xcode  7.3.1  +  システム要求：   iOS  8.0  +      Page5  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.  LongRange2D クラス  LongRange2D クラスは「Long  Range  Barcode  Gun」の  初期化・制御・情報取得を行うプロパティ・インタフェースを提供します。  

2.1.   Property  2.1.1.   longRange2DDevice  LongRange2DDevice インスタンスの設定、取得のプロパティ  @property  (nonatomic,  strong)  LongRange2DDevice  *longRange2DDevice;;  説明  	  デバイスを接続し、コマンドを受け取る・発送します。	    注：  	  LongRange2DDevice インスタンスがなければ、LongRange2D インスタンスが動けません。  

2.1.2.   beep  列挙型でビープの設定・状態取得ができるプロパティ。  
@property  (nonatomic,  assign)  BeepState  beep;;  説明  音量大、音量小、ビープなしの 3 つで設定ができます。  
ページ 20   の「7.2.  BeepState」を参照ください。  

2.1.3.   vibrator  バイブレーターを設定・状態取得ができるプロパティ。  
@property  (nonatomic,  assign)  VibratorState  vibrator;;  説明  バイブレーターをオン、オフの 2 つで設定できます。  
ページ 20   の「7.3.  VibratorState   」を参照ください。  

2.1.4.   sleepTime  スリープタイム設定・状態取得ができるプロパティ。  
@property  (nonatomic,  assign)  int  sleepTime;;  説明  スリープタイムを設定が行えます。  
接続を切断した後、ASR-­R202G 自体がスリープになるまでの時間を設定します。  

Page6  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.1.5.   autoOffTime  オートオフタイムの設定・取得ができるプロパティ。  
@property  (nonatomic,  assign)  int  autoOffTime;;  説明  接続を切断した後、ASR-­R202G 自体のパワーが OFF になるまでの時間を設定します。  

2.1.6.   scannerTimeOut  スキャンのタイムアウトの設定・取得ができるプロパティ。  
@property  (nonatomic,  assign)  int  scannerTimeOut;;  説明  ASR-­R202G で行なっているスキャンが停止する(レーザーが止まる)までの時間を設定します。  
Int   設定可能範囲   4~30(秒)。  

2.2.   メソッド  2.2.1.   initWithLongRange2DDevice  LongRange2D オブジェクトの初期化。  
-­  (id)initWithLongRange2DDevice:(LongRange2DDevice  *)device  delegate:(id<LongRange2DDelegate>)delegate;;  引数  device   ：LongRange2DDevice のインスタンスを指定します。        delegate   ：LongRange2DDevice からのレスポンスを受取るインスタンスを  指定します。  

2.2.2.   disconnect  ASR-­R202G と iOS デバイスの接続を切断。  
-­  (void)disconnect;;  説明  LongRange2DDevice の接続を切断を行います。  
実行時に、内部の LongRange2D インスタンスも廃棄されます。  
注：  	  LongRange2DDevice が廃棄されません。  

Page7  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.2.3.   setDelegate  Delegate 設定メソッド。  
-­  (void)setDelegate:(id<LongRange2DDelegate>)delegate;;  引数  delegate   ：LongRange2DDevice からのレスポンスを受取るインスタンスを  指定や、Delegate を設定しているターゲットを変更できます。  

2.2.4.   getFirmwareVersion  FW バージョン情報取得メソッド。  
-­  (NSString  *)getFirmwareVersion;;  説明  FW バージョン情報を文字列で取得できます。  

2.2.5.   getSerialNumber  シリアル番号取得メソッド。  
-­  (NSString  *)getSerialNumber;;  説明  シリアル番号を文字列で取得できます。  

2.2.6.   getBatteryStatus  バッテリーステータス取得メソッド。  
-­  (int)getBtatteryStatus;;  説明  ASR-­R202G のバッテリーステータスを返します。  
注：     	  頻繁に呼出した場合、エラーで取得出来ないケースがあります。  

2.2.7.   getAction  実行中コマンド取得。  
-­  (CommandType)getAction;;  説明  現在実行しているコマンドが取得できます。  
コマンドを実行してない場合は、CommandStop を返します。  
ページ 20   の「7.3  VibratorState   」を参照ください。  

Page8  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.2.8.   startScan  スキャン開始  -­  (ResultCode)startScan;;  説明     バーコードのスキャンを開始します。  
スキャンしたバーコードのデータは LongRange2DDelegate の  detectBarcode で受け取れます。  
ページ 17 の「6.1.4.  detectBarcode」を参照ください。  

2.2.9.   stopScan  スキャン停止  -­  (ResultCode)stopScan;;  説明  バーコードのスキャンを停止します。  

2.2.10.  

setBarcodeParam  バーコードスキャンのパラメーター設定  -­  (ResultCode)setBarcodeParam:(LongRange2DParamValue  *)paramData;;  引数  本メソッドは LongRange2DparamValue でバーコードのタイプとスキャン有効・無効を設定することができます。  

2.2.11.  

getBarcodeParam  スキャンするバーコードタイプの情報を返すメソッド  -­  (LongRange2DParamValue*)getBarcodeParam:(ParamName)paramName  引数  paramData   ：バーコード名称の列挙値  戻り値  LongRange2DparamValue にバーコードオブジェクトを返します。  
バーコードスキャンの有効・無効、名称を含めています。  
説明  getBarcodeParam メソッドで LongRange2DParamValue オブジェクトから返したバーコードの列挙型とバーコードスキャンの有効・無効情報を取得します。  

Page9  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.2.12.  

startBeepWithBeepTime  LongRange2D ビープの開始・ビープタイムを制御するメソッド  -­  (ResultCode)startBeepWithBeepTime:(int)beepTime;;  引数  beepTime：int 型、ビープタイムを設定します。  
説明  startBeepWithBeepTime で ASR-­R202G のビープ開始、ビープタイムを設定することができます。  

2.2.13.  

startVibratorWithVibratorTime  LongRange2D の振動開始と振動タイムを制御するメソッド  -­  (ResultCode)startVibratorWithVibratorTime:(int)vibratorTime;;  引数  	  	  vibratorTime：int 型、LongRange2D の振動タイムを設定します。  
説明  	  	  startVibratorWithVibratorTime で ASR-­R202G の振動の開始と、振動時間を設定できます。      Page10  Long  Range  Barcode  Gun  SDK   開発マニュアル  2.2.14.  

setDefaultScannerPrama  LongRange2D 初期設定に戻すメソッド。  
-­  (ResultCode)setDefaultScannerPrama;;  引数  本メソッドで LongRange2D を初期設定に戻します。  

2.2.15.  

updateFirmwareWithFileName  LongRange2D  FW の更新メソッド。  
-­  (void)updateFirmwareWithFileName:(NSString  *)filename  fileData:(NSData  *)data                                              resultCode:(void(^)(ResultCode  resultCode))resultCode  progress:(void(^)(NSProgress  *  progress))progress;;  引数  fileName：FW の名称を更新  data：FW のファイルデータを更新  resultCode：FW の更新結果  progress：FW の更新ステータスを更新  2.2.16.  

getMessageWithResultCode  コマンドの実行結果情報を返すメソッド。  
-­  (NSString  *)getMessageWithResultCode:(ResultCode)resultCode;;  引数  resultCode：列挙型 ResultCode コマンドが実行した結果です。  

Page11  Long  Range  Barcode  Gun  SDK   開発マニュアル  3.  LongRange2DDeviceClass  	  LongRange2Ddevice クラスは AsRing+制御プロトコル（AACP）レベルのLongRange2DDevice の HW ディバイスを表し、iOS と LongRange2DDevice の通信を制御するためにソフトウェアインタフェースを提供します。     3.1.   プロパティ  3.1.1.  delegate  AsRing+からイベントの通知またはイベントのデータを受け取るデリゲート。  
@property  (weak,  nonatomic)  id<LongRange2DDeviceReadDataDelegate>  delegate;;  3.1.2.  deviceModel  LongRange2D デバイスの型番を設定・取得。  
@property  (strong,nonatomic)  NSString  *  deviceModel;;  説明  deviceModel は LongRange2DDevice の型番となります。  

3.1.3.  isConnect  LongRange2Ddevice の接続ステータスを取得できるプロパティ。  
@property  (assign,nonatomic)  BOOL  isConnect;;        Page12  Long  Range  Barcode  Gun  SDK   開発マニュアル  3.2.   メソッド  3.2.1.  initWithDeviceModel  LongRange2Ddevice オブジェクトを初期化するメソッド。  
-­  (instancetype)initWithDeviceModel:(NSString  *)deviceModel;;  3.2.2.   getAddress  AsRing+で LongRange2DDevice に割り当てたアドレスを取得します。  
-­  (NSString  *)getAddress;;  3.2.3.   disconnect  LongRange2Ddevice インスタンスとの接続を切断します。  
-­  (void)disconnect;;  3.2.4.   getSDKVersion  LongRange2D  SDK のバージョンを返すメソッド  -­  (NSString  *)getSDKVersion;;      Page13  Long  Range  Barcode  Gun  SDK   開発マニュアル  4.  LongRange2DParamValue  バーコード名称とバーコードスキャンの有効・無効情報を取得するクラスです。  

4.1.   プロパティ  4.1.1.  paramName  列挙型でバーコード名を表すプロパティ。  
@property  (assign,  readwrite)  ParamName  paramName;;  説明  プロジェクト名を取得します。  
20 ページの「7.4  ParamName」をご参照ください。  

4.1.2.  value  @property  (assign,  readwrite)  unsigned  int  value;;  説明  バーコードスキャンが有効・無効の情報を取得します。  

4.2.   メソッド  4.2.1.  setEnabled  -­  (void)setEnabled:(BOOL)value;;  説明  バーコードスキャンが有効・無効を設定します。  

Page14  Long  Range  Barcode  Gun  SDK   開発マニュアル  5.  LongRange2DResultData  ResultCode を返すクラスです。メソッドが ResultCode とデータを返した時に使います。  

5.1.   メソッド  5.1.1.  initWithResultCode  -­  (id)initWithResultCode:(ResultCode)result  data:(NSData  *)data  引数  ResultCode：ResultCode 列挙型で LongRange2DResultData の実行結果を設定します。  
Data：NSData 型で LongRange2DResultData の実行結果を設定します。  
戻り値  LongRange2DResultData オブジェクトを返します。  
説明  LongRange2DResultData オブジェクトを生成します。  

5.1.2.  result  -­  (ResultCode)result;;  説明  ResultCode 列挙型で Action の実行結果を返します。  

5.1.3.  mData  -­  (NSData  *)data;;  説明  NSData データタイプで LongRange2D のデバイス情報を返します。         Page15  Long  Range  Barcode  Gun  SDK   開発マニュアル  6.  デリゲートインタフェース  6.1.   LongRange2DDelegate  6.1.1.  longRange2DInitialized  初期化完成した LongRange2D オブジェクトを返しすデリゲートメソッド。  
-­  (void)longRange2DInitialized:(LongRange2D  *)longRange2D;;  引数  longRange2D：初期化を完成した LongRange2D オブジェクト。  
説明  LongRange2D オブジェクトは LongRange2D と接続して、初期化を完成した後、本メソッドが呼び出します。  

6.1.2.  updateDeviceState  コマンド実行のステータスを返すデリゲートメソッド。  
-­  (void)updateDeviceState:(ResultCode)error;;  引数  error：ResultCode 列挙型、LongRange2D コマンドの実行結果を表示します。  
説明  デバイスのスキャンできるバーコードタイプなどのコフィグするコマンドを呼び出した時に、本メソッドが呼び出されて、ユーザーにコマンドよりコンフィグした結果を通知します。  

Page16  Long  Range  Barcode  Gun  SDK   開発マニュアル  6.1.3.  changedActionState  LongRange2D アクションのステータスの変化を返すデリゲートメソッド。  
-­  (void)changedActionState:(CommandType)action  resultCode:(NSInteger)resultCode;;  引数  action   ：CommandType 列挙型、LongRange2D が実行しているアクションを表示します。  
resultCode：NSInteger   型、LongRange2D が実行しているアクションコマンドのステータスを表示します。  
説明  startScan、stopScan などのメソッドを呼び出した時、LongRange2D のアクションが変化になります。この時、イベントが呼び出されて、ユーザーに通知します。  

6.1.4.  receivedBarcodeString  スキャンしたバーコード情報を返すデリゲートメソッド。  
-­  (void)receivedBarcodeString:(NSString  *)barcodeString  barcodeType:(BarcodeType)barcodeType;;  引数  barcodeType   ：BarcodeType 列挙型、スキャンされたバーコードタイプを表します。  
barcodeString   ：NSString 型、スキャンされたバーコードデータを表します。  
説明  startScan メソッドとスキャナーが呼び出された後、本イベントを呼び出します。  
バーコードデータが LongRange2D 内部で自動的に解析され、NSString 型で返します。  

6.1.5.  receivedBarcodeData  スキャンしたバーコード情報を返すデリゲートメソッド。  
-­  (void)receivedBarcodeData:(NSData  *)barcodeData  barcodeType:(BarcodeType)barcodeType;;  引数  barcodeType   ：BarcodeType 列挙型、スキャンされたバーコードタイプを表します。  
barcodeData：NSdata 型、スキャンされたバーコードデータを表します。  
説明  startScan メソッドとスキャナーが呼び出された後、本イベントを呼び出します。  
バーコードデータが LongRange2D 内部で自動的に解析されなく、ユーザーがバーコードタイプによって、解析する必要です。NSData 型で返します。  

Page17  Long  Range  Barcode  Gun  SDK   開発マニュアル  6.1.6.  onAsReaderTriggerKeyEvent  トリガーキーイベント取得デリゲートメソッド。  
-­  (BOOL)onAsReaderTriggerKeyEvent:(BOOL)status;;  引数        status：Bool 型  押下（YES）離す（NO）。  
戻り値        YES：デフォルト操作を実行します。  
押下：スキャン開始；離す：スキャン停止。  
NO：ユーザーカスタマイズ操作を実行します。  
説明  LongRange2D のトリガーキーを押下した場合、デリゲートが呼び出されます。引数は yes の場合、トリガーキーが押下され、引数は no の場合、トリガーキーが離されます。戻り値が yes の場合、SDK 内部のデフォルト操作を実行、戻り値が no の場合、APP よりを操作カスタマイズします。      Page18  Long  Range  Barcode  Gun  SDK   開発マニュアル  7.  列挙型  7.1.   ResultCode  LongRange2D のプロパティまたは LongRange2D 実行結果を表示します。  
定義  值  説明  ResultNoError  0x0000  成功の結果  ResultOtherError  0x0001  不明のなエラー  ResultInsufficientPower  0x000B  バッテリ残量が不足  ResultInOperation  0xE000  操作中  ResultOutOfRange  0xE001  範囲外  ResultNotConnected  0xE100  デバイスと接続されない  ResultInvalidParameter  0xE200  無効のパラメータ伝送  ResultInvalidResponse  0xE300  無効のパラメータを返す  ResultNotSupportFirmware  0xEE00  サポートしない FW  ResultTimeout  0xEFFF  アクセスタイムアウト  ResultHandleMismatch  0xF001  ハンドルがマッチングしない  ResultCRCError  0xF002  タグがレスポンスした CRC エラー  ResultCommandFormatError  0xF007  コマンドフォーマットエラー  ResultParamError  0xFFFB  パラメーターエラー  ResultBusy  0xFFFC  デバイスがビジー  ResultInvalidCommand  0xFFFD  無効なコマンド  ResultLowBattery  0xFFFE  バッテリ残量が低い  ResultOperationFailed  0xFFFF  実行失敗  Page19  Long  Range  Barcode  Gun  SDK   開発マニュアル  7.2.   BeepState  LongRange2D ビープのステータスを定義します。  
定義  值  説明  Beep_Off  0  ビープオフ  Beep_Low  1  ビープ音量小  Beep_High  2  ビープ音量大  7.3.   VibratorState  LongRange2D バイブレーターのステータスを定義します。  
定義  值  説明  Vibrator_Off  0  バイブレーターオフ  Vibrator_On  1  バイブレーターオン  7.4.   ParamName  LongRange2D のバーコード列挙型を定義します。  
定義  値  説明  Unknown  0x0000  Unknown  UPCA  0x00A8  UPC-­A  UPCE0  0x00B3  UPC-­E  EAN8  0x00C5  EAN/JAP-­8  EAN13  0x00BD  EAN/JAP-­13  Code128  0x0098  Code  128  Code39  0x006D  Code  39  Code93  0x0081  Code  93  Code11  0x0093  Code  11  I2of5  0x0077  Interleaved  2  of  5  Codabar  0x0066  Codabar  Page20  Long  Range  Barcode  Gun  SDK   開発マニュアル  MSI  0x00CC  MSI  X2of5  0x008F  Matrix  2  of  5  PDF417  0x00E2  PDF  417  MicroPDF  0x00E7  MicroPDF  417  Matrix  0x0102  Data  Matrix  MaxiCode  0x0108  MaxiCode  QRCode  0x00FC  QR  Code  AztecCode  0x010C  Aztec  Code  GS1128  0x009F  GS1-­128  Telepen  0x00A3  Telepen  CodablockA  0x00DA  Codablock  A  CodablockF  0x00DE  Codablock  F  JapanPost  0x00F5  Japan  Post  GS1DatabarRSS14  0x013D  GS1  Databar  (RSS-­14)    Page21