# AsReaderSDK The **AsReaderSDK** class serves as the main entry point of the SDK. From this class, you can access each manager (`DeviceManager`, `RFIDManager`, etc.) and control the overall SDK operations. --- ## getInstance Retrieves the instance of **AsReaderSDK**. This method follows the Singleton design pattern. ```java public static AsReaderSDK getInstance() ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `AsReaderSDK` - Instance object of the AsReaderSDK class ``` ### Sample Code ```java AsReaderSDK asReader = AsReaderSDK.getInstance(); ``` --- ## getDeviceManager Retrieves the instance of **DeviceManager**. ```java public DeviceManager getDeviceManager() ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `DeviceManager` - Instance object of the [DeviceManager class](DeviceManager.md) ``` ### Sample Code ```java DeviceManager deviceManager = AsReaderSDK.getInstance().getDeviceManager(); ``` --- ## initialize Initializes the SDK. This method must be called when the application starts. ```java public void initialize(Context context) ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - `context` - `Context` - Application or Activity context ``` ### Sample Code ```java AsReaderSDK.getInstance().initialize(this); ``` --- ## getRFIDManager Retrieves the instance of **RFIDManager**. ```java public RFIDManager getRFIDManager() ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `RFIDManager` - Instance object of the [RFIDManager class](RFIDManager.md) ``` ### Sample Code ```java RFIDManager rfidManager = AsReaderSDK.getInstance().getRFIDManager(); ``` --- ## setLogLevel Sets the log level. ```java public void setLogLevel(LogLevel level) ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - `level` - `LogLevel` - One of the enumeration values from [LogLevel](LogLevel.md) ``` ### Sample Code ```java AsReaderSDK.getInstance().setLogLevel(LogLevel.Debug); ``` --- ## getLogLevel Retrieves the currently set log level. ```java public LogLevel getLogLevel() ``` ### Return Value ```{list-table} :align: left :class: list-table * - Type - Description * - `LogLevel` - Enumeration type [LogLevel](LogLevel.md) ``` ### Sample Code ```java LogLevel logLevel = AsReaderSDK.getInstance().getLogLevel(); ``` --- ## setLog Enables or disables SDK log output. ```java public void setLog(boolean enable) ``` ### Parameters ```{list-table} :align: left :class: list-table * - Name - Type - Description * - `enable` - `boolean` - `true`: Enable / `false`: Disable ``` ### Sample Code ```java AsReaderSDK.getInstance().setLog(true); ``` --- ## removeSDKLog Deletes all previously output SDK logs. ```java public void removeSDKLog() ``` ### Sample Code ```java AsReaderSDK.getInstance().removeSDKLog(); ```