iBeacons:como obter transmitido farol de energia (txPower)
-
20-12-2019 - |
Pergunta
iBeacons parecem transmitir suas txPower parâmetro (relatório de RSSI de energia em 1 metro de distância), que é usado no cálculo beacon.accuracy
e beacon.proximity
propriedades (detalhes no iBeacon anúncios de pacotes podem ser encontrados aqui).
No entanto, CLBeacon
classe não parecem ter uma propriedade para txPower.Existe uma maneira que eu possa obter txPower usando um Núcleo Local de quadro, ou a necessidade de eu ir para baixo para o Núcleo de Bluetooth?A razão que eu preciso esta, é, eu quero experimentar personalizado, farol de precisão/proximidade de cálculo para muito rápida beacon imediata gama de descoberta.Neste circunstâncias inversa, cálculo de txPower accuracy
não é de auxiliar.
Solução
Infelizmente, você não pode obter este valor através de programação com CoreLocation
ou CoreBluetooth
.A Apple bloqueia o acesso a todos os dados com iBeacon CoreBluetooth
(Ver o meu esgotamento deste aqui.) Da mesma forma com CoreLocation
simplesmente não é exposto na CLBeacon
de classe como você viu.
Desde que você diz que você não pode fazer o inverso-o cálculo, a única outra maneira que eu possa pensar em fazer isso são:
- Uso um Android, OSX Mavericks, ou de dispositivos do Linux, que não oferecem tais restrições sobre a leitura este campo.
- Fazer uma tabela de pesquisa no seu aplicativo iOS de todos os seus iBeacons (com UUID/maior/menor valores vs.sua txPower valor)
Opção 2 acima, obviamente, requer que você atribuir identificadores únicos para todos os seus iBeacons sob teste.