Próbowałem zaimplementować program skanowania beacon i chcę, aby usługi android BLE zachowywały się podobnie do metody iOS "didRangeBeacons", tzn. Powinny być wywoływane co sekundę. Ale w Androidzie nie ma takiej metody. Ale w Androidzie istnieje metoda "leScanCallback", która jest wywoływana bardzo często z czasem skanowania krótszym niż sekunda. Czy istnieje sposób, w jaki mogę wdrożyć moją funkcjonalność w metodzie leScanCallback i wydłużyć jej okres skanowania do 1 sekundy, aby zachował się podobnie do metody "didRangeBeacons" systemu iOS.Jak zwiększyć czas skanowania urządzeń BLE w systemie Android?
* Czy złe będzie także ciągłe skanowanie radiolatarni i zwiększenie częstotliwości skanowania w systemie Android?
Dzięki z góry
Dzięki David. Sprawdzałem kod napisany przez ciebie. To naprawdę fajna praca. A teraz mam logikę skanowania. :) – HeadOnn
Jeśli chcemy skanować tylko wtedy, gdy aplikacja znajduje się na pierwszym planie, a nie w tle. Co będzie lepsze? Skanowanie ciągłe lub skanowanie w interwale (powiedzmy 1 sekundę) –
Należy skanować z przerwą. Wiele urządzeń z Androidem ma warstwę sprzętową bluetooth, która zapewnia tylko jedno wywołanie zwrotne wykrywania na wykrycie urządzenia sprzętowego na skanowanie. Aby uzyskać drugie wywołanie zwrotne dla tego samego urządzenia sprzętowego, wymagane jest zatrzymanie i ponowne uruchomienie. – davidgyoung