Recuperar el tiempo estimado del viaje, la distancia y la hora de salida

Puede crear una aplicación que solicite el tiempo, la distancia, y la hora de salida estimados para el viaje en automóvil en Estados Unidos y en Canadá, mediante la API de duración de viaje, que se incluye en el paquete net.rim.device.api.lbs.travel. Por ejemplo, puede crear una aplicación de redes sociales que proporcione al usuario del dispositivo BlackBerry la hora estimada de llegada a la ubicación de un amigo. También podría crear una aplicación que se integre con la aplicación de calendario de un usuario que proporcione al usuario la hora de salida para llegar a una próxima cita.

TravelTimeEstimator es una clase de instancia única que es compatible con solicitudes síncronas y asíncronas. Las solicitudes síncronas bloquean los procesos del subproceso actual hasta que la solicitud devuelva o arroje una excepción. Es recomendable que ejecute llamadas síncronas en un subproceso diferente para que la solicitud no bloquee el subproceso actual. Una solicitud asíncrona vuelve al subproceso una vez envía una solicitud de estimación. Los resultados se devuelven de forma asíncrona al objeto del servicio de escucha que proporcione.

Las solicitudes se envían a un servidor de duración del viaje, que utiliza la información del tráfico actual e histórico para trazar una ruta entre las ubicaciones de partida y de llegada. Puede crear una solicitud para la duración del viaje y la distancia obteniendo una instancia de la clase TravelTimeEstimator, invocando TravelTimeEstimator.requestArrivalEstimate() y pasando las coordenadas geográficas de las ubicaciones de partida y de llegada, y la hora de inicio. Cuando la solicitud devuelve un objeto TravelTime, puede recuperar la duración del viaje y la distancia invocando TravelTime.getElapsedTime() y TravelTime.getDistance(), respectivamente. Para solicitar una hora de salida es necesario que invoque TravelTimeEstimator.requestDepartureEstimate() y pase la hora de llegada junto con las coordenadas de las ubicaciones de partida y de llegada. Cuando se devuelve la solicitud, puede recuperar la hora de salida invocando TravelTime.getStartTime().


¿Le ha resultado útil esta información? Envíenos sus comentarios.