/ / Jak znaleźć najbliższy Eddystone Beacon z interfejsem API w pobliżu? - Android, beacon, eddystone, google-nearby

Jak znaleźć najbliższy sygnał Eddystone Beacon z interfejsem API w pobliżu? - Android, beacon, eddystone, google-nearby

Mam tę aplikację na Androida, która wykrywaSygnały nawigacyjne korzystające z pobliskiego interfejsu API. Jestem w stanie wykryć wszystkie sygnalizatory obecne w okolicy. Jak znaleźć najbliższy sygnał nawigacyjny w tym konkretnym obszarze? Czy istnieje interfejs API Google, który może pomóc?

Odpowiedzi:

0 dla odpowiedzi № 1

Chociaż interfejs API w pobliżu nie daje żadnych wskazówek, który sygnał nawigacyjny jest bliżej, możesz go użyć Biblioteka Android Beacon w tym celu. Ma interfejs API określający zarówno przybliżoną odległość do każdego skanowanego sygnału nawigacyjnego, jak i RSSI (siłę sygnału) tego sygnału nawigacyjnego. Możesz po prostu posortować według wszystkich widocznych sygnałów nawigacyjnych, aby znaleźć najbliższy.

        public void didRangeBeaconsInRegion(Collection<Beacon> beacons, Region region) {
for (Beacon beacon : beacons) {
Log.i(TAG, "I see a beacon that is about "+beacon.getDistance()+" meters away.");
}
}

0 dla odpowiedzi nr 2

Zakładając, że mówimy o interfejsie API wiadomości w pobliżu, istnieją MessageListener wywołania zwrotne, które dają dostęp do oszacowania siły sygnału i odległości wykrytych sygnałów nawigacyjnych:

Oddzwanianie RSSI i odległość

public void onBleSignalChanged(final Message message, final BleSignal bleSignal) {
Log.i(TAG, "Message: " + message + " has new BLE signal information: " + bleSignal);
}

public void onDistanceChanged(final Message message, final Distance distance) {
Log.i(TAG, "Distance changed, message: " + message + ", new distance: " + distance);
}

Subskrybujesz je tak samo, jak subskrybujesz onFound i onLost callbacks.