# AsReaderInfo ## Properties | Property Name | Attributes | Type | Description | | ---------------------- | ------------------ | ----------------- | ---------------------------------------------------------------------------------------------------------------- | | deviceName | nonatomic, readonly| NSString | Device name | | deviceFirmware | nonatomic, readonly| NSString | Device firmware | | deviceHardware | nonatomic, readonly| NSString | Device hardware | | deviceID | nonatomic, readonly| NSString | Device ID | | deviceManufacturer | nonatomic, readonly| NSString | Device manufacturer | | deviceModelNumber | nonatomic, readonly| NSString | Device model number | | deviceSerialNumber | nonatomic, readonly| NSString | Device serial number | | deviceProtocol | nonatomic, readonly| NSString | Device protocol | | currentSelectDevice | readonly, assign | int | Currently selected device | | isPowerOn | readonly, assign | BOOL | Device power supply | | currentReaderMode | readonly, assign | ReaderMode | Type of currently selected device | | receiveDataType | nonatomic, assign | ReceiveDataType | Data type of received data | | isShowPrintNSLog | readonly, assign | BOOL | Whether to output logs. YES: output; NO: do not output. | | isBeep | readonly, assign | BOOL | Beep sound on/off. YES: on, NO: off | | isVibration | readonly, assign | BOOL | Vibration on/off. YES: on, NO: off | | isLED | readonly, assign | BOOL | LED on/off. YES: on, NO: off | | isIllumination | readonly, assign | BOOL | Illumination on/off. YES: on, NO: off | | isSymbologyPrefix | readonly, assign | BOOL | Tag prefix character | | isTriggerModeDefault | readonly, assign | BOOL | Default trigger mode | | isReadRSSIMode | readonly, assign | BOOL | Whether to enable RSSI. YES: enable; NO: disable | | rfidpower | readonly, assign | float | RFID output | | rfidPowerMax | readonly, assign | float | Maximum RFID output | | rfidPowerMin | readonly, assign | float | Minimum RFID output | | rfidOnTime | readonly, assign | int | RFID on time | | rfidOffTime | readonly, assign | int | RFID off time | | rfidChannel | readonly, assign | int | RFID channel | | count | readonly, assign | int | Tag count | | scanTime | readonly, assign | int | Scan time | | cycle | readonly, assign | int | Scan cycle | | carrierSenseTime | readonly, assign | int | Carrier sense time | | targetRFPowerLevel | readonly, assign | int | RF energy level | | rfidListenBeforeTalk | readonly, assign | int | LBT (Listen Before Talk) | | rfidFrequencyHopping | readonly, assign | int | RFID frequency hopping | | rfidContinuousWave | readonly, assign | int | RFID continuous scan | | isSmartHopping | readonly, assign | BOOL | Smart frequency hopping | | rfidModuleVersion | nonatomic, readonly| NSString | RFID module version | | bundleIdentifier | nonatomic, readonly| NSString | Bundle ID | | supportMode | readonly, assign | ReaderMode | Supported device types | | isEnginePowerAlwaysOn | nonatomic, assign | BOOL | YES: No need to manually call power-on method (ASR-M24D, ASR-M30S) NO: Need to manually call power-on method | ## `sharedInstance` Creates and initializes an AsReaderInfo object (singleton pattern). Call this to use a common instance throughout the application. ```objectivec + (instancetype)sharedInstance; ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `instancetype` - Instance of AsReaderInfo class ``` ### Sample Code ```objectivec AsReaderInfo *info = [AsReaderInfo sharedInstance]; ``` --- ## `isSupportType` Checks whether the current device supports the specified module type. ```objectivec - (BOOL)isSupportType:(ReaderMode)supportType; ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - `supportType` - `ReaderMode` - Module type (see details in [`ReaderMode`](./12_AsReaderInfoDefine.md#readermode)) ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `BOOL` - YES: supported, NO: not supported ``` ### Sample Code ```objectivec BOOL status = [asReaderInfo isSupportType:ReaderModeBarcode]; if (status) { // Supported } else { // Not supported } ``` --- ## `getSupportTypeArray` Gets an array of module types supported by the current device. ```objectivec - (NSArray *)getSupportTypeArray; ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `NSArray` - Array of supported module types (see [`ReaderMode`](./12_AsReaderInfoDefine.md#readermode)) ``` ### Sample Code ```objectivec NSArray *supportTypeArray = [asReaderInfo getSupportTypeArray]; ```