기기의 RSSI 및 보정 된 전송 전력을 고려할 때 BLE 장치에 대한 예상 범위를 얻으려고합니다.Android BLE iBeacon 광고 패킷이 예상보다 큰
보정 된 txPower는 아마도 주변 장치 iBeacon 알림 패킷의 마지막 바이트로 방출됩니다. 발견 한 문서에 따르면 이러한 패킷은 길이가 30 바이트 여야합니다.
그러나 패킷에 대해 반환 된 byte[]
길이는 62 바이트입니다. 이 때문에 광고 데이터의 형식을 알 수 없습니다.
왜 이런 일이 벌어지고 62 바이트 패킷의 형식을 해독 할 수 있습니까?
이상합니다. 주변 장치의 교정 된 txPower를 얻는 간단한 방법이 있습니까? 보정 상수는 광고에서 필요한 모든 것입니다. – Orbit
보급 알림의 바이트에서 상수를 가져와야합니다. PDU를 파싱하는 것보다 간단한 해결책은 정적 iBeacon 접두사의 바이트 패턴을 검색 한 다음 거기에서 오프셋을 기반으로하는 교정 상수를 찾는 것입니다. 이 접근법의 단점은 바이트 시퀀스가 광고의 다른 위치에도 나타날 수 있으므로 기술이 실패하게됩니다. – davidgyoung