Как прочитать свойства батареи в RFID Scan для Zebra 8500, используя Zebra_RFIDAPI3_SDK_2.0.0.2?
Я пытаюсь получить свойства батареи от Zebra 8500 в сканировании Rfid, я использую Zebra_RFIDAPI3_SDK_2.0.0.2
что я пытаюсь сделать это (см. код ниже)
создание объекта RfidEventsListener, затем подписка на eventStatusNotify и попытка получить доступ к уровню зарядки аккумулятора, уровень
Но каждый раз, когда он дает мне значения, как NULL, кажется, есть некоторая проблема с RfidEventsListener.
Может ли кто-нибудь помочь мне в этом?
rfidReader.Events.setBatteryEvent(true);
rfidReader.Config.getDeviceStatus(true, true, true);
StatusEventData statusEventData =
rfidReader.Events.GetStatusEventData(RFID_EVENT_TYPE.BATTERY_EVENT);
RfidStatusEvents rfidReadEvents = new RfidStatusEvents(statusEventData);
rfidReadEvents.setStatusEventData(statusEventData);
rfidReader.Events.addEventsListener(eventHandler);
eventHandler.eventStatusNotify(rfidStatusEvents);
RfidEventsListener eventHandler = new RfidEventsListener() {
@Override
public void eventStatusNotify(RfidStatusEvents rfidStatusEvents) {
boolean charging = rfidStatusEvents.StatusEventData.BatteryData.getCharging();
int battery = rfidStatusEvents.StatusEventData.BatteryData.getLevel();
String batterycause = rfidStatusEvents.StatusEventData.BatteryData.getCause();
StatusEventData statusEventData = rfidReader.Events.GetStatusEventData(RFID_EVENT_TYPE.BATTERY_EVENT);
RfidStatusEvents rfidReadEvents = new RfidStatusEvents(statusEventData);
rfidReadEvents.setStatusEventData(statusEventData);
}
}
@Override
public void eventReadNotify(RfidReadEvents rfidReadEvents) {
Toast.makeText(context, "rfidReadEvents : ", Toast.LENGTH_SHORT).show();
}
};