Android, Wi-Fi активные сканы - PullRequest
1 голос
/ 04 мая 2011

Мне нужно частое сканирование Wi-Fi на моем приложении для Android (я пытаюсь построить локальную систему внутреннего позиционирования на основе значений Wi-Fi RSSI). Если я вызываю wifi.startScan (), функция onReceive () вызывается один раз каждые 6 секунд (я полагаю, по умолчанию она сканирует пассивно): как получить более частые обратные вызовы? Должен ли я попросить «активные» сканирования? Как это сделать? Есть ли недостатки?

Ответы [ 2 ]

2 голосов
/ 04 мая 2012

Я пытался сделать то же самое и пришел к следующему выводу. Это невозможно на 2.1 и выше. Я не имею понятия о более низких версиях, потому что мое приложение должно было работать на 2.1 и выше.

-Измененные вещи внутри Android SDK, чтобы включить активное сканирование

- Отследил его до драйвера, что привело к следующему выводу: Драйвер каждый раз переводит модуль Wi-Fi в пассивный режим. Я искал, чтобы изменить это в драйвере, но на диске не было никаких настроек для достижения этого.

Итог: Не возможно.

1 голос
/ 04 мая 2011

Не думаю, что ты можешь.Это настройка устройства и / или версии ОС.Например, на Nexus One сканирование занимает примерно секунду, тогда как на G1 это занимает значительно больше времени (или получают свежие результаты после нескольких сканирований).Если я правильно помню, какая-то версия Android (<2.0) не выполняла новое сканирование каждый раз, когда вызывался <code>startScan(), но могла повторно использовать старый результат.Но я могу ошибаться в этом.

...