Desarrollo App de Proximidad

eXtreM3

Buenas tardes,
tengo en mente el desarrollo de una aplicación mobile cuya particularidad es detectar cercanía entre dos personas.
Sería una especie de "pilla-pilla" inverso, donde la persona A dice "oye, estoy aquí, encuéntrame!" (guardamos su geolocalización) y esto llega a la persona B, que a partir de un mapa tendría que llegar hasta la persona A.

He encontrado esto y el concepto me ha encantado

https://uimovement.com/ui/7387/find-the-driver/

Algo así sería bastante ideal para mi proyecto, que a medida que vayas andando te indique con un visor los metros que te faltan para llegar hasta A. No tiene que ser exactamente como en el ejemplo, que va tirando de la cámara y realidad aumentada. A mí me valdría con que apareciese una flecha con la dirección a seguir y la distancia.

Tengo un par de preguntas:

  • ¿La geolocalización del móvil es muy precisa? ¿Qué margen de error puede tener?
  • Para desarrollar lo que busco (la parte de la flecha indicando dirección y los metros a tiempo real) ¿qué tecnología necesito?

No piloto de código nativo para Android ni iOS, pero lo cual si un framework como PhoneGap me permite a través de sus plugins hacer esto de la geolocalización, me valdría.

Es un proyecto personal y de momento no busco comercializarlo, así que lo que sea más rápido para desarrollarlo me valdría.

Cuando lo tenga terminado seguramente cree un hilo para pagar por un nombre y un logo, y especificaría más concretamente el concepto de la aplicación.

Un saludo!

1
PaCoX

https://insights.dice.com/2018/03/19/google-opens-its-maps-api-to-augmented-reality-development/
https://developers.google.com/ar/

1 respuesta
_Rpv

Lo bien que va la geolocalización depende del teléfono móvil, entre otros factores.

1 respuesta
Jastro

Si vas a desarrollar aplicacion hibrida, te recomiendo nativescript, te dejo un ejemlo de como funciona la localizacion

En cuanto a precision, hay varios factores, depende del hardware del movil, no es lo mismo la ubicacion de un iphone x a un samsung galaxy 5, en interiores se revienta vivo, solo funciona correctamente en exteriores,

En cuanto a mo desarrollar la flecha, entiendo que en el backend, deberias controlar la posicion de ambos e ir refrescando, cada de forma visual cada vez que se mueva. Algo asi.

1 respuesta
eXtreM3

#2 gracias. Como he comentado eso sería lo ideal, pero me parece demasiado complejo para mi proyecto. Quizás en el futuro me plantee algo así. De momento con dibujar una flechita de dirección y los metros me es más que suficiente =)

#3 #4 no sabía que la geolocalización va ligada -también- al propio hardware. Vaya locura entonces, imagino que podría estudiar las limitaciones de cada modelo y limitar el uso de la aplicación a aquellas en las que funcione, al menos decente.

¿A partir de qué año o de qué generación de móviles puedo encontrar problemas con esto?

El punto fuerte es precisamente este, todo lo demás gira alrededor y son acciones secundarias. Si tecnológicamente no se puede RIP proyecto.

Gracias por las respuestas.

pd: no sería para interiores, al menos no de momento.

1 respuesta
Jastro

#5 Si te digo la verdad, hace 3 años que no desarrollo apps, pero en su dia habia diferencias. Nunca va a ser una posicion exacta, pero si una aproximación. Igualmente, cuando yo desarrollaba estaba el iphone 4 y gente con los s4 jodiendo, pero al final puedes mas o menos, apañarlo.

Al final, que difieran 2 o 3 metros, no es un problema. Lo que mas se nota es a la hora de moverse y actualizar, por ejemplo el iphone actualizaria cada 2 pasos que das, y a lo mejor un s5 se actualizaria cada 10 pasos (por dar un ejemplo mas grafico) Es mas lento a la hora de actualizar, pero al final actualiza.

Anda que no me daba yo paseos como un imbecil por las afueras de mi edificio para ver las diferencias de actualizaciones xD

1 respuesta
eXtreM3

#6 ah! Vale, entonces me preocupa menos porque la persona B es la que se acerca, y en esta sí puedo controlar el dispositivo. Lo que me hace más falta es que la ubicación de A sea lo más precisa posible para que B pueda llegar sin mucho problema.

Mortium

Yo hice una aplicación muy parecida con phonegap, lo mas complejo que veo es que tienes que hacer un google maps realtime compartido entre todos los usuarios conectados a la aplicación.

1 respuesta
eXtreM3

#8 no exactamente. La ubicación en tiempo real sólo se comparte de A con B. Nadie más puede ver a A.

Mortium

Pues en grupos de 2

vincen

Depende del móvil puede haber una variación de 50 metros.. igual el nuevo iPhone o el nuevo Samsung Galaxy S10, te da un margen de 5 metros, pero después te vas a cualquier otro teléfono de gama media / baja e igual te saca 40 metros..

Eso usando el GPS como hardware, hay moviles que ni tienen GPS y usan el GPS 3g/4g que eso ya a saber cuanto es.

29 días después
eXtreM3

Creéis que la precisión del GPS mejorará en el corto plazo? Tengo ya montado prácticamente todo el backend, realmente no me importa dejar el proyecto en stand-by hasta que tecnológicamente la precisión de los GPS de los móviles mejore mucho, pero sólo si hay pretensiones de mejora, si no es tontería.

1 respuesta
HeXaN

#12 ¿Pero cuánta precisión necesitas? Ahora mismo, en media, son +-5 metros.

https://www.researchgate.net/publication/271590866_Assessing_absolute_and_relative_accuracy_of_recreation-grade_and_mobile_phone_GNSS_devices_a_method_for_informing_device_choice_Assessing_accuracy_of_GNSS_devices

https://www.researchgate.net/publication/317348262_GPS_GNSS_accuracy_of_Lenovo_Phab_2_Pro_under_conditions_of_windthrown_area

https://www.researchgate.net/publication/306052159_Horizontal_accuracy_and_applicability_of_smartphone_GNSS_positioning_in_forests

1 respuesta
eXtreM3

#13 por qué sabes todo de todo? Jajaja el pato está bien formado.

Necesito cuanta más mejor, si llegase hasta 1 metro sería perfecto, pero si actualmente son 5 metros me vale, es muy aceptable. Me apoyaré de enviar notificaciones a A para avisar que B se está acercando (en plan frío / caliente)

Zerokkk

La verdad que no sé si esto será una burrada, pero... ¿Y si captas la geolocalización inicial con GPS, y luego el movimiento lo captas con el acelerómetro? A través de él puedes derivar la distancia recorrida para un tiempo determinado, e incluso la dirección, hasta donde yo sé, vaya.

Seguiría habiendo el problema esencial de que quizá la primera medición no cumpla la precisión que necesitas (de 1m, cuando como bien dice HeXaN, como mucho conseguirás de 5m), pero al menos el movimiento de después lo captarás guay.

1 respuesta
eZpit

Si hasta ahora miles de apps funcionan bien con la precisión de los móviles actuales no creo que tu uso sea una excepción. Casi todas las apps de conductores privados, repartidores usan apps para ambos los conductores y los clientes. Y tienes “find my phone” y similares que básicamente hacen lo que tu propones.

Lo que dice #15 es algo que obviamente los desarrolladores de los OS ya han pensado y no te han de preocupar.

Mírate una plataforma de las dos, su API y el wrapper js que quieras y hazlo en vez de preguntar tanto. Que ya habrías acabado.

1 respuesta
Zerokkk

#16 Vamos que dices que cuando uno se suscribe a un método reactivo de obtención de posición, ya tira la propia api de Geolocation al acelerómetro tras la primera query, en lugar de hacer queries cada X tiempo?

Pues la verdad que no tenía ni idea, aunque sentido tiene xD.

1 respuesta
eZpit

#17 Si. Tienes también APIs de geofencing. Básicamente si el móvil está estático no van a gastar recursos en encender antena/gps....