Недавно я начал играть с несколькими маяками Kontakt и своим телефоном Android (LG L30).
Я добавил регион по умолчанию для обнаружения всех маяков:
private static final Region ALL_BEACONS_REGION = Region.EVERYWHERE;
И я инициализировал новый MonitoringListener. Соответствующий код:
@Override
public void onBeaconsUpdated(Region region, List<BeaconDevice> list) {
List<BeaconDevice> beacons = new ArrayList<BeaconDevice>();
Iterator i = list.iterator();
while (i.hasNext()){
BeaconDevice beacon = (BeaconDevice)i.next();
if(beacon.getUniqueId() != null) {
beacons.add(beacon);
}
}
}
Во время отладки я заметил, что иногда уникальный идентификатор равен нулю. Вот почему я проверяю, является ли он нулевым, но все равно нахожу это очень странным. Это распространено или ошибка в моем коде? И как я могу однозначно идентифицировать маяк, если имя равно null?