# Callback list
In this plugin, scan processing and various operation results are basically notified through callback functions.
For example, the results of operations such as reading barcodes, tags, and changing settings are returned in callbacks, so the app should receive the results and process them as necessary.
## PLUGGED_STATUS
Tells whether AsReader is physically connected to the device.
The connection status is obtained when AsReader is inserted or removed.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- bool
- AsReader connection status
true:Connected
false: not connected
```
### Sample code
```dart
if (asreaderSdk4Plugin.PLUGGED_STATUS == methodCall.method) {
bool isPluged = methodCall.arguments['result'];
}
```
## CONNECTED_STATUS
Notifies the connection status of AsReader.
The connection status will be notified when the method [setReaderPower](methods.md#setreaderpower) is called.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- bool
- AsReader connection status
true:Connected
false: not connected
```
### Sample code
```dart
if (asreaderSdk4Plugin.CONNECTED_STATUS == methodCall.method) {
bool isConnected = methodCall.arguments['result'];
}
```
## TRIGGER_STATUS
Notifies the trigger key status (pressed/released) of AsReader.
The status will be notified when the trigger key is operated.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- String
- Trigger key status
```
### Sample code
```dart
if (asreaderSdk4Plugin.TRIGGER_STATUS == methodCall.method) {
String status = methodCall.arguments['result'];
}
```
## POWER_ON_OFF
Notifies AsReader power and hard mode status.
Calling the method [setReaderPower](methods.md#setreaderpower) will notify you of the status.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - isOn
- bool
- Power status
true:on
false:off
* - isHWModeChange
- bool
- Hard mode changes
true:change
false: do not change
```
### Sample code
```dart
if (asreaderSdk4Plugin.POWER_ON_OFF == methodCall.method) {
bool isOn = methodCall.arguments['isOn'];
bool isHWModeChange = methodCall.arguments['isHWModeChange'];
}
```
## RELEASED_TRIGGER_BUTTON
Notified when AsReader's trigger key press is released.
### Sample code
```dart
if (asreaderSdk4Plugin.RELEASED_TRIGGER_BUTTON == methodCall.method) {
}
```
## PUSHED_TRIGGER_BUTTON
Notified when AsReader's trigger key is pressed
### Sample code
```dart
if (asreaderSdk4Plugin.PUSHED_TRIGGER_BUTTON == methodCall.method) {
}
```
## RECEIVED_SCAN_DATA
Notify scanned data. Calling one of the methods below will notify you of the scan results.
-[startBarcodeScan](methods.md#startbarcodescan)
-[startScan](methods.md#startscan)
-[startNFCScan](methods.md#startnfcscan)
-[startLfScan](methods.md#startlfscan)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- scanned data
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_SCAN_DATA == methodCall.method) {
Uint8List byteData = methodCall.arguments['result'];
}
```
## RECEIVED_SCAN_DATA_AND_DATA_TYPE
Notify scanned data and data type. Calling one of the methods below will notify you of the scan results.
-[startBarcodeScan](methods.md#startbarcodescan)
-[startScan](methods.md#startscan)
-[startNFCScan](methods.md#startnfcscan)
-[startLfScan](methods.md#startlfscan)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - readData
- Uint8List
- scanned data
* - dataType
- int
- Data type
99: unknown, 0: barcode, 1: RFID, 2: NFC
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_SCAN_DATA_AND_DATA_TYPE == methodCall.method) {
Uint8List readData = methodCall.arguments['readData'];
int dataType = methodCall.arguments['dataType'];
}
```
## UNKNOWN_COMMAND_RECEIVED
Reports responses to undefined commands.
Calling [getRSSIThreshold](methods.md#getrssithreshold) will notify you of the response if the command is not defined.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- data
```
### Sample code
```dart
if (asreaderSdk4Plugin.UNKNOWN_COMMAND_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## BATTERY_RECEIVED
Notifies you of the remaining battery power of AsReader.
Calling [getCurrentBattery](methods.md#getcurrentbattery) will notify you of the remaining battery power of AsReader.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- AsReader battery level
```
### Sample code
```dart
if (asreaderSdk4Plugin.BATTERY_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## ERROR_RECEIVED
Notifies error information. Error information is reported when you call any of the methods below.
-[readTagWithAccessPassword](methods.md#readtagwithaccesspassword)
-[writeTagMemoryWithAccessPassword](methods.md#writetagmemorywithaccesspassword)
-[lockTagMemoryWithAccessPassword](methods.md#locktagmemorywithaccesspassword)
-[killTagWithPassword](methods.md#killtagwithpassword)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
-Description
* - result
- Uint8List
- Error information
```
### Sample code
```dart
if (asreaderSdk4Plugin.ALL_DATA_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## RECEIVED_SLEEP_TIME_AND_ISACK
Notifies you of the sleep time settings and acquisition results for your Bluetooth device. When you call one of the methods below, you will be notified of the Bluetooth device's sleep time settings or acquisition results.
-[getSleepTimeForBLEDevice](methods.md#getsleeptimeforbledevice)
-[setSleepTimeForBLEDeviceType](methods.md#setsleeptimeforbledevicetype)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - time
- int
- Bluetooth device sleep time
* - isAck
- bool
- true: returned when calling the setSleepTimeForBLEDeviceType method
false: returned when calling getSleepTimeForBLEDevice method
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_SLEEP_TIME_AND_ISACK == methodCall.method) {
int time = methodCall.arguments['time'];
bool isAck = methodCall.arguments['isAck'];
}
```
## RECEIVED_SLEEP_TIME
Receive sleep time settings or acquisition results for Bluetooth devices. Calling one of the methods below will notify you of the result of setting or obtaining sleep time for a Bluetooth device.
-[getSleepTimeForBLEDevice](methods.md#getsleeptimeforbledevice)
-[setSleepTimeForBLEDeviceType](methods.md#setsleeptimeforbledevicetype)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- Bluetooth device sleep time
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_SLEEP_TIME == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## EPC_RECEIVED_AND_TID
Notify scanned EPC and TID data.
Calling [startReadTagAndTidWithTagNum](methods.md#startreadtagandtidwithtagnum) informs you of the EPC and TID data obtained as a result of the scanning process.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - epc
- Uint8List
- EPC data
* - tid
- Uint8List
- TID data
```
### Sample code
```dart
if (asreaderSdk4Plugin.EPC_RECEIVED_AND_TID == methodCall.method) {
Uint8List epc = methodCall.arguments['epc'];
Uint8List tid = methodCall.arguments['tid'];
}
```
## PC_EPC_RECEIVED
Notify tag data.
Calling [startScan](methods.md#startscan) will notify you of the EPC data of the tags read.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- tag data
```
### Sample code
```dart
if (asreaderSdk4Plugin.PC_EPC_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## PC_EPC_RSSI_RECEIVED_AND_RSSI
Notifies tag data with RSSI value.
Calling the method [startReadTagsAndRssiWithTagNum](methods.md#startreadtagsandrssiwithtagnum) reports the EPC and RSSI data of the tags read.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - pcEpc
- Uint8List
- pcEPC data
* - rssi
- int
- RSSI data
```
### Sample code
```dart
if (asreaderSdk4Plugin.PC_EPC_RSSI_RECEIVED_AND_RSSI == methodCall.method) {
Uint8List pcEpc = methodCall.arguments['pcEpc'];
int rssi = methodCall.arguments['rssi'];
}
```
## PC_EPC_SENSOR_DATA_RECEIVED
Notifies scanned temperature tag/humidity tag data.
Calling [startReadTagsRFM](methods.md#startreadtagsrfm) will notify you of the scan results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - pcEpc
- Uint8List
- Temperature tag/humidity tag data
* - sensorData
- Uint8List
- Temperature/humidity data
```
### Sample code
```dart
if (asreaderSdk4Plugin.PC_EPC_SENSOR_DATA_RECEIVED == methodCall.method) {
Uint8List pcEpc = methodCall.arguments['pcEpc'];
Uint8List sensorData = methodCall.arguments['sensorData'];
}
```
## PC_EPC_SENSOR_DATA_RECEIVED_RSSI
Notifies temperature tag/humidity tag data with scanned RSSI value.
Calling the method [startReadTagsRFM](methods.md#startreadtagsrfm) will notify you of the scanned temperature/humidity tag data with RSSI values.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - pcEpc
-Uint8List
- Temperature/humidity tag data
* - sensorData
- Uint8List
- Temperature/humidity data
* - rssi
- int
- RSSI data
```
### Sample code
```dart
if (asreaderSdk4Plugin.PC_EPC_SENSOR_DATA_RECEIVED_RSSI == methodCall.method) {
Uint8List pcEpc = methodCall.arguments['pcEpc'];
Uint8List sensorData = methodCall.arguments['sensorData'];
int rssi = methodCall.arguments['rssi'];
}
```
## DID_SET_OUTPUT_POWER_LEVEL
Notifies you of the power setting results.
Calling the method [setOutputPowerLevel](methods.md#setoutputpowerlevel) will notify you of the power setting result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_OUTPUT_POWER_LEVEL == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## DID_SET_CHANNEL_PARAM_RECEIVED
Notifies you of the RF channel setting results.
When you call the method [setChannel](methods.md#setchannel), you will be notified of the RF channel setting result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_CHANNEL_PARAM_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## DID_SET_ANTI_COLLISION
Notifies the setting results of the anti-collision algorithm.
Calling the method [setAnticollision](methods.md#setanticollision) will notify you of the result of setting the anticollision algorithm.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_ANTI_COLLISION == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## DID_SET_SESSION
Notifies you of the Session settings results.
When you call the method [setSession](methods.md#setsession), you will be notified of the result of setting the Session.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_SESSION == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## CHANNEL_RECEIVED_AND_CHANNEL_OFFSET
Notifies you of the RF channel acquisition results.
When you call the method [getChannel](methods.md#getchannel), you will be notified of the RF channel acquisition result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
-Description
* - channel
- int
- Channel of RFID module
* - channelOffset
- int
- RFID module channel offset
```
### Sample code
```dart
if (asreaderSdk4Plugin.CHANNEL_RECEIVED_AND_CHANNEL_OFFSET == methodCall.method) {
int channel = methodCall.arguments['channel'];
int channelOffset = methodCall.arguments['channelOffset'];
}
```
## ANTICOL_PARAM_RECEIVED_AND_COUNTER
Informs the anti-collision algorithm.
Calling the method [getAnticollision](methods.md#getanticollision) tells you the anticollision algorithm.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - mode
- int
- Fixed Q: 0, Dynamic Q: 1
* - counter
- int
- counter
```
### Sample code
```dart
if (asreaderSdk4Plugin.ANTICOL_PARAM_RECEIVED_AND_COUNTER == methodCall.method) {
int mode = methodCall.arguments['mode'];
int counter = methodCall.arguments['counter'];
}
```
## MODULATION_PARAM_RECEIVED_RXMOD_DR
Notifies the acquisition result of modulation mode.
When you call the method [getModulation](methods.md#getmodulation), you will be notified of the modulation mode acquisition result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - blf
- int
- BLF_160:160, BLF_250:250, BLF_320:320, BLF_640:640
* - rxMod
- int
- FM0:0, M2:1, M4:2, M8:3
* - dr
- int
- 8:0, 64/3:1
```
### Sample code
```dart
if (asreaderSdk4Plugin.MODULATION_PARAM_RECEIVED_RXMOD_DR == methodCall.method) {
int blf = methodCall.arguments['blf'];
int rxMod = methodCall.arguments['rxMod'];
int dr = methodCall.arguments['dr'];
}
```
## TX_POWER_LEVEL_RECEIVED_POWER
The current output power and maximum and minimum output power acquisition results will be notified.
When you call the method [getOutputPowerLevel](methods.md#getoutputpowerlevel), you will be notified of the current output power and the results of obtaining the maximum and minimum output power.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Values of rfidPower, rfidPowerMax, rfidPowerMin
```
### Sample code
```dart
if (asreaderSdk4Plugin.MODULATION_PARAM_RECEIVED_RXMOD_DR == methodCall.method) {
Uint8List byteData = methodCall.arguments['result'];
int rfidPower = (byteData[0] << 8 ) | byteData[1];
int rfidPowerMin = (byteData[2] << 8 ) | byteData[3];
int rfidPowerMax = (byteData[4] << 8 ) | byteData[5];
}
```
## REGION_RECEIVED
We will notify you of the results of obtaining regional information.
When you call the method [getRegion](methods.md#getregion), you will be notified of the results of obtaining regional information.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
-type
- Description
* - result
- int
- 17:Korea, 33:North America, 34:US, 49:Europe, 65:Japan, 82:China, 97:Brazil
```
### Sample code
```dart
if (asreaderSdk4Plugin.REGION_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## SELECT_PARAM_RECEIVED
Notifies the acquisition result of the Select function.
When you call the method [getSelectParameter](methods.md#getselectparameter), you will be notified of the results obtained by the Select function.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
*-result
- Uint8List
- target(3bit): session: S0 (000), S1 (001), S2 (010), S3 (011), SL (100)
action(3bit):ISO18000-6C
memoryBank(2bit): Region: RFU (00), EPC (01), TID (10), User (11)
pointer(32bit): Filter start address
length(8bit): Length of filter data
truncate(1bit): Control whether to cut the filtered data: on (1), off (0)
reserve(7bit): Reserve
mask(0~255bit): Filter data
```
### Sample code
```dart
if (asreaderSdk4Plugin.SELECT_PARAM_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## ON_OFF_TIME_CHANGEDD
The results of the reading time and idle time settings will be notified.
Calling the method [setReadTime](methods.md#setreadtime) will notify you of the result of setting the read time and idle time.
### Sample code
```dart
if (asreaderSdk4Plugin.ON_OFF_TIME_CHANGED == methodCall.method) {
}
```
## FHLBT_RECEIVED
You will be notified of the acquisition results of "FH and LBT parameters".
When you call the method [getFhLbtParameter](methods.md#getfhlbtparameter), you will be notified of the results of obtaining the FH and LBT parameters.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
-type
- Description
* - result
- Uint8List
- Reading time (16bit), idle time (16bit), carrier sense time (16bit), target RF power (16bit), FH (8bit), LBT (8bit), CW (8bit)
```
### Sample code
```dart
if (asreaderSdk4Plugin.FHLBT_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## HOPPING_TABLE_RECEIVED
Notifies the hopping table acquisition results.
When you call the method [getFrequencyHoppingTable](methods.md#getfrequencyhoppingtable), you will be notified of the hopping table acquisition results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Table size (8bit)
```
### Sample code
```dart
if (asreaderSdk4Plugin.HOPPING_TABLE_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## DID_SET_FHLBT
Notifies the setting results of FH and LBT arguments.
When you call the method [setHoppingOnOff](methods.md#sehoppingonoff), you will be notified of the results of setting the FH and LBT parameters.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
-int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_FHLBT == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## DID_SET_OPTI_FREQ_HPTABLE
Notify the hopping table setting results.
When you call the method [setFrequencyHoppingTableSize](methods.md#setfrequencyhoppingtablesize), you will be notified of the hopping table setting result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_OPTI_FREQ_HPTABLE == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## DID_SET_FHMODE_CHANGED
Notify the hopping table setting results.
When you call the method [setFrequencyHoppingMode](methods.md#setfrequencyhoppingmode), you will be notified of the hopping table setting result.
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_FHMODE_CHANGED == methodCall.method) {
}
```
## DID_SET_MODULATION
Notifies the modulation mode setting result.
When you call the method [setModulationBLF](methods.md#setmodulationblf), you will be notified of the modulation mode setting result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_MODULATION == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## RFID_MODULE_VERSION_RECEIVED
AsReader will notify you of the basic information acquisition results.
When you call the method [getRFIDModuleVersion](methods.md#getrfidmoduleversion), you will be notified of the acquisition result of AsReader basic information.
### Sample code
```dart
if (asreaderSdk4Plugin.RFID_MODULE_VERSION_RECEIVED == methodCall.method) {
}
```
## RFID_ON_OFF_TIME_RECEIVED
Notifies the acquisition results of FH and LBT arguments.
When you call the method [getFhLbtParameter](methods.md#getfhlbtparameter), you will be notified of the results of getting the FH and LBT arguments.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- The SDK parses the data and stores it in the AsReaderInfo class, in which the values of rfidOnTime, rfidOffTime, carrierSenseTime, rfidListenBeforeTalk, rfidContinuousWave, and rfidFrequencyHopping are updated.
```
### Sample code
```dart
if (asreaderSdk4Plugin.RFID_ON_OFF_TIME_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## RSSI_THRESHOLD_RECEIVED
Notifies the acquisition results of RSSI filter conditions.
When you call the method [getRSSIThreshold](methods.md#getrssithreshold), you will be notified of the results of obtaining the RSSI filter conditions.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- RSSI value
```
### Sample code
```dart
if (asreaderSdk4Plugin.RSSI_THRESHOLD_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## WRITTEN_RECEIVED
Notify the data writing result to the RF tag. When you call one of the methods below, the RF tag will be notified of the data write result.
-[writeTagMemoryWithEPC](methods.md#writetagmemorywithepc)
-[writeTagMemoryWithAccessPassword](methods.md#writetagmemorywithaccesspassword)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.WRITTEN_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## SESSION_RECEIVED
Notifies session acquisition results.
When you call the method [getSession](methods.md#getsession), you will be notified of the session acquisition result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- S0:0, S1:1, S2:2, S3:3, Dev.mode: 240
```
### Sample code
```dart
if (asreaderSdk4Plugin.SESSION_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## TAG_MEMORY_RECEIVED
Reports the tag data of the specified memory.
Calling the method [readTagWithAccessPassword](methods.md#readtagwithaccesspassword) will notify you of the tag data in the specified memory.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- tag data
```
### Sample code
```dart
if (asreaderSdk4Plugin.TAG_MEMORY_RECEIVED == methodCall.method) {
Uint8List result = methodCall.arguments['result'];
}
```
## KILL_RECEIVED
Notifies tag kill results.
Calling the method [killTagWithPassword](methods.md#killtagwithpassword) will notify you of the tag kill result.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.KILL_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## LOCKED_RECEIVED
Notifies you of the tag lock result.
Calling the method [lockTagMemoryWithAccessPassword](methods.md#locktagmemorywithaccesspassword) will notify you of the result of locking the tag.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.LOCKED_RECEIVED == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## RESPONSE_REBOOT
Notifies you of the processing results after AsReader restarts (firmware update, etc.).
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.RESPONSE_REBOOT == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## UPDATED_REGISTERY
Notifies you of registry update results.
When you call the method [updateRegistry](methods.md#updateregistry), you will be notified of the registry update results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- 0: success
Other than 0: Failure
```
### Sample code
```dart
if (asreaderSdk4Plugin.UPDATED_REGISTERY == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## NFC_READ_MULTI_BLOCK_RECEIVED
Notifies you of the NFC tag reading results.
When you call the method [readMultiBlockWithBlockIndex](methods.md#readmultiblockwithblockindex), you will be notified of the result of reading the NFC tag.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - dataArray
- NSArray
- Read NFC tag data
* - statusCode
- int
-NFC tag status code
```
### Sample code
```dart
if (asreaderSdk4Plugin.NFC_READ_MULTI_BLOCK_RECEIVED == methodCall.method) {
NSArray dataArray = methodCall.arguments['dataArray'];
int statusCode = methodCall.arguments['statusCode'];
}
```
## NFC_WRITE_SINGLE_BLOCK_STATUS_CODE
Notifies you of the NFC tag write result.
When you call the method [writeSingleBlockWithBlockIndex](methods.md#writesingleblockwithblockindex), you will be notified of the result of writing the NFC tag.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
-Description
* - result
- int
- NFC tag status code
```
### Sample code
```dart
if (asreaderSdk4Plugin.NFC_WRITE_SINGLE_BLOCK_STATUS_CODE == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## NFC_WRITE_BYTES_STATUS_CODE
Notify NFC tag data and status code.
Calling the method [writeBytesWithBlockIndex](methods.md#writebyteswithblockindex) will notify you of the NFC tag data and status code.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
-int
- NFC tag status code
```
### Sample code
```dart
if (asreaderSdk4Plugin.NFC_WRITE_BYTES_STATUS_CODE == methodCall.method) {
int result = methodCall.arguments['result'];
}
```
## SCANING_BLE_DEVICE
Notify search results of Bluetooth device name.
When you call the method [startBleScan](methods.md#startblescan), you will be notified of the search results for Bluetooth device names.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - name
- String
- Bluetooth device name
```
### Sample code
```dart
if (asreaderSdk4Plugin.SCANING_BLE_DEVICE == methodCall.method) {
String name = methodCall.arguments['name'];
}
```
## SCAN_BLE_STATUS
Notify you of Bluetooth status search results.
Calling the method [startBleScan](methods.md#startblescan) will notify you of the Bluetooth status search results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - status
- String
- Bluetooth status
```
### Sample code
```dart
if (asreaderSdk4Plugin.SCAN_BLE_STATUS == methodCall.method) {
String status = methodCall.arguments['status'];
}
```
## ON_ASREADER_TRIGGER_KEY_EVENT_STATUS
Callback the execution result after pressing the trigger button.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - status
- String
- If AsReader type is RFID, returns "RFID startScan"; if AsReader type is Barcode, returns "Barcode startScan"; if AsReader type is NFC, returns "NFC startScan".
```
### Sample code
```dart
if (asreaderSdk4Plugin.ON_ASREADER_TRIGGER_KEY_EVENT_STATUS == methodCall.method) {
String status = methodCall.arguments['status'];
}
```
## ALL_DATA_RECEIVED
Called back when tag data is received.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Read data
```
### Sample code
```dart
if (asreaderSdk4Plugin.ALL_DATA_RECEIVED == methodCall.method) {
Uint8List readData = methodCall.arguments['result'];
}
```
## STOP_READ_SCAN
Receives scan stop status.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
-Scan stop status
```
### Sample code
```dart
if (asreaderSdk4Plugin.STOP_READ_SCAN == methodCall.method) {
int status = methodCall.arguments['result'];
}
```
## STARTED_READ_SCAN
Receives scan start status.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- Scan start status
```
### Sample code
```dart
if (asreaderSdk4Plugin.STARTED_READ_SCAN == methodCall.method) {
int status = methodCall.arguments['result'];
}
```
## RECEIVED_BEEP
Receive callback results for beep settings.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Beep setting callback result
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_BEEP == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## READER_INFO_RECEIVED
When calling the method [getReaderInfo](methods.md#getreaderinfo), this callback method receives the data information of AsReader.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Store information (read time, idle time, carrier sense time, target RF power level, LBT, hopping, continuous wave, frequency table, etc.) in class ModelInformation
```
### Sample code
```dart
if (asreaderSdk4Plugin.READER_INFO_RECEIVED == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## DID_SET_STOP_CONDITION
Receives the StopCondition setting results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
-int
- StopCondition setting result
```
### Sample code
```dart
if (asreaderSdk4Plugin.DID_SET_STOP_CONDITION == methodCall.method) {
int status = methodCall.arguments['result'];
}
```
## STOP_CONDITIONS_RECEIVED
When calling the method [getStopCondition](methods.md#getstopcondition), this callback method receives the value of StopCondition.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Value of StopCondition
```
### Sample code
```dart
if (asreaderSdk4Plugin.STOP_CONDITIONS_RECEIVED == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## RESPONSE_BOOT_LOADER_S0
Receives callback results for firmware update data.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Firmware update data callback results
```
### Sample code
```dart
if (asreaderSdk4Plugin.RESPONSE_BOOT_LOADER_S0 == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## RECEIVED_BARCODE_DATA
Receives all communication data from the Barcode module.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- Barcode data
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_BARCODE_DATA == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## RECEIVED_FACTORY_RESET
Receive AsReader reset results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
-Description
* - result
- int
- Reset start (0x00), reset complete (0xFF)
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_FACTORY_RESET == methodCall.method) {
int status = methodCall.arguments['result'];
}
```
## RECEIVED_CODE_ID
Receive the CodeID in this callback method when calling the method getCodeID (2.45).
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- int
- codeID data
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_CODE_ID == methodCall.method) {
int status = methodCall.arguments['result'];
}
```
## RECEIVED_HID
Receive the HID mode status in this callback method when calling the method [getHID](methods.md#gethid).
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - hidOn
- bool
- HID status:
On: true, off: false
* - iOShidOn
- bool
- iOS or Android:
iOS: true, Android: false
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_HID == methodCall.method) {
bool hidOn = methodCall.arguments['hidOn'];
bool iOShidOn = methodCall.arguments['iOShidOn'];
}
```
## RECEIVED_PRESENTATION_MODE
Receive the presentation mode status in this callback method when calling the method [getPresentationMode](methods.md#getpresentationmode).
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - isOn
- bool
- true: on; false: off
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_PRESENTATION_MODE == methodCall.method) {
bool isOn = methodCall.arguments['isOn'];
}
```
## RECEIVED_SLEEP_BEEP
When you call one of the methods below, this callback method receives the AsReader's auto-sleep and auto-sleep time settings.
-[setSleepBeep](methods.md#setsleepbeep)
-[setSleepTime](methods.md#setsleeptime)
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- data
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_SLEEP_BEEP == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## RECEIVED_BARCODE_SET_SSI_SUCCESS
When calling the method [setSsiParamWithDictionary](methods.md#setssiparamwithdictionary), this callback method receives the SSI parameter setting results.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - result
- Uint8List
- data
```
### Sample code
```dart
if (asreaderSdk4Plugin.RECEIVED_BARCODE_SET_SSI_SUCCESS == methodCall.method) {
Uint8List data = methodCall.arguments['result'];
}
```
## RECEIVED_SYMBOLOGIES
When calling the method [getSymbologies](methods.md#getsymbologies), this callback method receives the read status of the barcode type.
### Parameters
```{list-table}
:align: left
:class: list-table
* - argument name
- type
- Description
* - dataArray
- List