Google Nearby Connection API: измерение уровня сигнала

Недавно я нашел, казалось бы, классный способ общения между устройствами с помощью API Google Nearby. Беглый просмотр документации не дал ответа на мой вопрос - можно ли измерить уровень сигнала соединения в режиме реального времени, или мне следует придумать какие-то хитрости, например. измерение времени отправки и получения данных или что-то еще?

Спасибо.


person sonderlain    schedule 25.09.2015    source источник
comment
Судя по тому, что доступно в справочной документации, нет.   -  person Andy    schedule 28.09.2015
comment
Речь идет о Nearby Connection API или Nearby Messages API? Поскольку принятый ответ, по-видимому, относится к сообщениям, а заголовок вопроса касается подключения...   -  person StefanTo    schedule 27.11.2015


Ответы (2)


Как заявил разработчик Nearby API в теме Google Nearby Messages - Отменить первоначальную связь между устройствами :

Сегодня функция «Рядом» не показывает расстояние напрямую.

Вместо этого он предлагает использовать BLE RSII.

Вы можете получить приблизительное приблизительное расстояние, измерив BLE RSSI, если одно из устройств поддерживает рекламу BLE. Это будет чувствительно к тому, как устройство удерживается, усиление антенны и факторы окружающей среды, но лучше, чем случайное.

Однако прямого API для измерения рулетки не существует.

person saibots    schedule 16.10.2015

Если ваш вопрос действительно касается «API близлежащих подключений», а не «API близлежащих сообщений», вы можете просто проверить уровень сигнала Wi-Fi:

WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
int numberOfLevels = 5;
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int level = WifiManager.calculateSignalLevel(wifiInfo.getRssi(), numberOfLevels);
person StefanTo    schedule 27.11.2015