Существует большое количество различий между моделями устройств Android (часто называемых фрагментацией), и это относится к поведению Bluetooth LE так же, как и все остальное.Различия между телефонами Android - более вероятное объяснение расхождений, которые вы видите, чем частота сканирования, которая по умолчанию равна 100% -ному рабочему циклу (LOW LATENCY) на всех устройствах Android, которые я видел, и похожа на iOS.
При тех же условиях некоторые устройства Android сканируют одинаковое количество рекламных объявлений BLE на iPhone (например, устройства Pixel и более поздние версии Nexus 5+). Но не все устройства Android дают столь же хорошие результаты.
Вы не делаетеконкретно укажите, какие модели Android, которые вы тестировали, видели меньше рекламных объявлений, но есть ряд причин, которые могут это вызвать:
Некоторые старые устройства Android, такие как Nexus 4, Nexus 7 иМото G (1-го поколения) будет обнаруживать только по рекламе на скан для каждого уникального устройства Bluetooth.Перезапуск сканирования был необходим для обнаружения второго пакета с этого устройства.Вы можете попробовать перезапустить сканирование BLE каждую секунду или около того, чтобы увидеть, помогает ли это.
Некоторые устройства Android, такие как Huawei P9, имеют очень плохо работающие антенны BLE, поэтому они редко могут обнаружитьУстройства BLE на расстоянии более 10 метров, тогда как iPhone обычно обнаруживают на расстоянии 40-50 метров и более.Вы можете увидеть, является ли это причиной вашей проблемы, посмотрев на уровень сигнала (значение RSSI) для полученных пакетов.Значения RSSI постоянно слабее (более отрицательные) на устройствах Android и iOS?Если так, то это объясняет расхождение.