Как получить близость

#ibeacon #ibeacon-android

#ibeacon #ibeacon-android

Вопрос:

У меня здесь есть несколько iBeacons.

Теперь, как я узнаю, что они далеко или близко?

Есть ли способ получить это от маяка?

Я видел это https://estimote.github.io/Android-SDK/JavaDocs / но я не понимаю, как узнать по маяку, что он далеко или нет?

Ответ №1:

При использовании библиотеки iBeacon для Android с открытым исходным кодом это очень простой процесс:

     @Override 
    public void didRangeBeaconsInRegion(Collection<IBeacon> iBeacons, Region region) {
        for (IBeacon iBeacon: iBeacons) {
            if (iBeacon.getProximity() == IBeacon.PROXIMITY_NEAR) {
                Log.d(TAG, "The beacon is near");
            }
            else if (iBeacon.getProximity() == IBeacon.PROXIMITY_FAR) {
                Log.d(TAG, "The beacon is far");
            }            
        }
    }
  

Вы можете увидеть более крупный пример этого в примере кода ранжирования здесь.

Комментарии:

1. Спасибо. Я не смог создать ссылку. За исключением того, что у меня есть список маяков в Android, а не iBeacon. Проблема в моем маяке, который я не могу сделать.getProximity

2. Обратите внимание, что мой ответ выше касается библиотеки iBeacon для Android, которая представляет собой другую платформу с другими API, отличными от Estimote SDK в вашем вопросе. Ссылка на библиотеку приведена выше.

3. РЕДАКТИРОВАТЬ: я использую комплект SDK для предварительного просмотра, а не библиотеку iBeacon с открытым исходным кодом.