Android - Alternativa múltiples escaneos WIFI - WifiManager.startScan()

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 244 puestos en Android (en relación al último mes)
Gráfica de Android

Alternativa múltiples escaneos WIFI - WifiManager.startScan()

Publicado por Fabián (1 intervención) el 30/10/2019 18:01:15
Hola a todos,
Estoy desarrollando una aplicación que permita obtener la ubicación del dispositivo utilizando una red WIFI, esto es posible mediante una trilateración, que básicamente es un calculo entre las distancias y las posiciones (coordenadas) de los AP (Access Point), este tema ya lo tengo resuelto. El inconveniente es que necesito que me de la posición del dispositivo en tiempo real, y para ello es necesario realizar escaneos simultáneos de las redes WIFI cada cierto tiempo, ya que necesito saber la intensidad de la señal para calcular la distancia de cada AP con relación al dispositivo.
A partir de la versión 9.0 de Android no es posible realizar escaneos "infinitos" con WifiManager.startScan() solo nos permite realizar 4 escaneos en dos minutos, y al tener esta limitación no puedo posicionar el dispositivo de una manera constante, ya que un usuario puede moverse de un lado al otro en corto tiempo y solo se podría realizar un escaneo cada 30 segundos (para cubrir los 2 min), y una persona normal puede una distancia de 89,7m en un minuto, por lo tanto debería hacerse un escaneo cada 1.5 segundos.

Las preguntas son:

- Existe alguna alternativa para este inconveniente?
- Es posible hacer un calculo de la ubicación utilizando solamente las coordenadas de los APs y una intensidad de la señal(una distancia conocida y las otra no), ya que si es posible recibir la intensidad de la señal de manera constante cuando se esta conectado a un AP utilizando RSSI_CHANGED_ACTION.

Gracias de antemano.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder