Usar GoogleMap o MapBox Direction API implementar mi propia navegación en mi aplicación

Me gustaría implementar un mapa de navegación para los controladores en mi aplicación de Android. No quiero usar el esquema de URL para abrir la aplicación Google Maps para navegar por ella. Prefiero implementar esta función de navegación dentro de mi aplicación, como lo hace Google Map.

Mis requisitos son bastante simples. Navegue al usuario de PlaceA a PlaceB.

Después leí los documentos del sitio web de google y MapBox. hay instrucciones api para que el usuario obtenga toda la información como rutas.

1 API de dirección de GoogleMap:https://developers.google.com/maps/documentation/directions/intro?hl=en

2 API de dirección de MapBox:https://www.mapbox.com/developers/api/directions/

Mi pregunta se encuentra a continuación: 1 ¿Cómo sé cuándo es el momento adecuado para indicarle al usuario que debe girar a la derecha / izquierda? 2 ¿Cómo sé qué tan lejos de mi ubicación actual para la próxima maniobra / Pasos? ¿Tengo que volver a calcular la distancia después de cambiar mi ubicación ya que mi ubicación siempre cambia? 3 ¿Cómo sé que el usuario ha realizado una acción incorrecta? Por ejemplo, se supone que debe girar a la derecha, pero el usuario giró a la izquierda. Necesito solicitar a su servidor que vuelva a calcular la ruta.

¿Cualquier sugerencia? Gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta