# AsReaderNFCDevice ## `sharedInstance` `AsReaderNFCDevice`オブジェクトを作成して初期化します(シングルトンパターン)。 ```objectivec + (instancetype)sharedInstance; ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `instancetype` - AsReaderNFCDeviceオブジェクト ``` --- ## `sendData` データを送信します。 ```objectivec - (BOOL)sendData:(NSData *)sendData; ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 項目名 - 型 - 説明 * - `sendData` - NSData - 送信するデータ ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `startScan` AsReaderのNFCスキャンを開始します。 このメソッドの実行後、処理結果は [`receivedScanData`](../common/common/8_AsReaderDeviceProtocol.md#receivedscandata) によってコールバックされます。 ```objectivec - (BOOL)startScan; ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `stopScan` AsReaderのNFCタグのスキャンを停止します。 ```objectivec - (BOOL)stopScan; ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `readMultiBlockWithBlockIndex:count:` 指定されたUIDのICタグメモリ上の連続した複数ブロックのデータを読み取ります。 **このメソッドの実行後、処理結果は [`nfcReadMultiBlockReceived`](./6_AsReaderNFCProtocol.md#nfcreadmultiblockreceived) によってコールバックされます。** ```objectivec - (BOOL)readMultiBlockWithBlockIndex:(int)index count:(int)count; ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 項目名 - 型 - 説明 * - `index` - int - 開始ブロック番号(0~255) * - `count` - int - 読み取るブロック数(0~255) ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `writeSingleBlockWithBlockIndex:writeData:uid:` 指定されたUIDのICタグのメモリ上の指定されたブロックにデータを書き込みます。 **このメソッドの実行後、処理結果は [`nfcWriteSingleBlockStatusCode`](./6_AsReaderNFCProtocol.md#nfcwritesingleblockstatuscode) によってコールバックされます。** ```objectivec - (BOOL)writeSingleBlockWithBlockIndex:(int)index writeData:(NSData *)writeData uid:(NSData *)uid; ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 項目名 - 型 - 説明 * - `index` - int - 開始ブロック番号(0~255) * - `writeData` - NSData - 書き込むデータ(各ブロックのサイズは4bit) * - `uid` - NSData - NFCタグのUIDデータ ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `writeBytesWithBlockIndex:writeData:uid:` 指定されたUIDの指定されたブロックから指定されたバイト数のデータを書き込みます。 **このメソッドの実行後、処理結果は [`nfcWriteBytesStatusCode`](./6_AsReaderNFCProtocol.md#nfcwritebytesstatuscode) によってコールバックされます。** ```objectivec - (BOOL)writeBytesWithBlockIndex:(int)index writeData:(NSData *)writeData uid:(NSData *)uid; ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 項目名 - 型 - 説明 * - `index` - int - 開始ブロック番号(0~255) * - `writeData` - NSData - 書き込むデータ(各ブロックのサイズは4bit) * - `uid` - NSData - NFCタグのUIDデータ ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` --- ## `setInventoryTime` 読取時間を設定します。 ```objectivec - (BOOL)setInventoryTime:(float)inventoryTime; ``` ### パラメータ ```{list-table} :align: left :class: list-table * - 項目名 - 型 - 説明 * - `inventoryTime` - float - インベントリ時間 ``` ### 戻り値 ```{list-table} :align: left :class: list-table * - 型 - 説明 * - `BOOL` - メソッドの実行結果:YES:成功 NO: 失敗 ``` ```