Я пытаюсь преобразовать информацию, которую я получаю от пары маяков, в обзор переработчика.Recyclerview загружает первую информацию, которую я анализирую, в onCreate ().Я установил идентификаторы специально для каждого маяка, чтобы он обновлялся в определенном месте в обзоре переработчика.Но по какой-то причине он не войдет в саму функцию.Там нет журнала самих маяков.Когда я помещаю журнал в didRangeBeaconsInRegion (), я получаю соответствующий идентификатор от каждого маяка.
Есть какие-нибудь советы?Извините, что-то новое для маяков.
/**
* Implementation of the beacon Consumer class. Is called when searching for beacons.
*/
@Override
public void onBeaconServiceConnect() {
Log.d(TAG, "onBeaconServiceConnect: beacons connected.");
beaconManager.setRangeNotifier(new RangeNotifier() {
@Override
public void didRangeBeaconsInRegion(Collection<Beacon> collection, Region region) {
for(Beacon beacon : collection){
String tempString = beacon.getId1().toString();
checkBeacon(tempString, (float)beacon.getDistance());
}
}
});
// Start ranging the beacons
try{
Log.d(TAG, "onBeaconServiceConnect: Start ranging beacons.");
beaconManager.startRangingBeaconsInRegion(new Region("MyRegion",null,null,null));
}catch (Exception e){
e.printStackTrace();
}
}
private void checkBeacon(String ID, float distance){
if(ID == beaconIdentifier[0]){
beacons.set(0, beaconsName[0] + ":" + distance);
Log.d(TAG, "checkBeacon:" + beacons.get(0));
}
if(ID == beaconIdentifier[1]){
beacons.set(1, beaconsName[1] + ":" + distance);
Log.d(TAG, "checkBeacon:" + beacons.get(1));
}
if(ID == beaconIdentifier[2]){
beacons.set(2, beaconsName[2] + ":" + distance);
Log.d(TAG, "checkBeacon:" + beacons.get(2));
}
if(ID == beaconIdentifier[3]){
beacons.set(3, beaconsName[3] + ":" + distance);
Log.d(TAG, "checkBeacon:" + beacons.get(3));
}
}