Espruino:Справочник по API/Класс NRF/filterDevices()

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Функция NRF.filterDevices()[1]

Синтаксис

NRF.filterDevices(devices, filters)

Параметры

  • devices – массив объектов BluetoothDevice, возвращаемый функцией NRF.findDevices() или похожей на нее
  • filters – список фильтров (такой передается функции NRF.requestDevice()), с помощью которых будут отфильтровываться устройства

Возвращаемое значение

Массив объектов BluetoothDevice, соответствующих заданным фильтрам.

Описание

Эту функцию можно использовать для быстрой фильтрации Bluetooth-устройств.

Например, если вам нужно одновременно просканировать максимум разных типов устройств, можете воспользоваться NRF.findDevices(), задав там все нужные вам фильтры. После этого сканирования вы можете воспользоваться NRF.filterDevices(), чтобы выбрать именно те устройства, что вам нужны.

// мы заинтересованы в устройствах двух типов:

var filter1 = [{serviceData:{"fe95":{}}}];
var filter2 = [{namePrefix:"Pixl.js"}];
// фильтр ниже вернет оба типа устройства:
var allFilters = filter1.concat(filter2);
// теперь сканируем оба этих типа, а затем отфильтровываем их:
NRF.findDevices(function(devices) {
  var devices1 = NRF.filterDevices(devices, filter1);
  var devices2 = NRF.filterDevices(devices, filter2);
  // ...
}, {filters : allFilters});

Примеры

См.также

Внешние ссылки