Notas de la versión del SDK de Driver para Android

En esta sección, se incluyen las notas de la versión del SDK de Driver para Android.

v5.0.0 (12 de septiembre de 2023)

Cambios de dependencia y configuración

  • Se actualizó el SDK de Navigation a la versión 5.x.
  • Se actualizó minSdkVersion al nivel de API 23.
  • Se actualizó la versión de Kotlin a 1.9.0.
  • Se agregó una dependencia en Room.
  • Las apps que usan el SDK del controlador ahora deben tener targetSdkVersion de API 31 o superior.
  • Las apps que usan el SDK de Driver ahora deben habilitar la compatibilidad con la biblioteca de Java 8. Para obtener instrucciones sobre cómo actualizar, consulta https://developer.android.com/studio/write/java8-support.
  • Las apps que usan Proguard o Dexguard deben migrar a R8. Para obtener más información, consulta https://developer.android.com/build/shrink-code.
  • Las apps que usan el SDK de Driver deben habilitar la expansión de sintaxis. Para obtener instrucciones, consulta https://developer.android.com/studio/write/java8-support#library-desugaring.

Correcciones de errores

  • Se corrigió un problema con la sincronización de inhabiliteLocationTracking.
  • Se introdujo una nueva interfaz DriverStatusListener que informa una causa en las actualizaciones del estado de excepciones.
  • Se solucionó el problema por el que los conductores permanecían quietos (disponible a partir de la versión 4.99.0).

v4.99.0 (9 de agosto de 2023)

  • Admite un rango de versiones para la dependencia de NavSDK. ** Compatible con las versiones 4.5.0 y 5.0.0 (sin incluir la versión 5.0.0).
  • Evita que la hora de llegada estimada disminuya solo cuando el vehículo esté detenido. Este cambio se lanza de forma gradual como un experimento, por lo que no todas las aplicaciones verán este cambio al mismo tiempo.

v4.5.0 (12 de mayo de 2023)

  • Actualiza la dependencia del SDK de Navigation a la versión 4.5. Ten en cuenta que cambiaron los IDs de grupos y artefactos del SDK de Navigation.

v4.4.3 (20 de marzo de 2023)

Cambio de dependencia

  • Actualiza la dependencia del SDK de Navigation a la versión 4.4.1.

v4.4.2 (15 de febrero de 2023)

Correcciones de errores

  • Mejora el tiempo de recuperación de la red cuando el SDK encuentre un problema de conexión temporal. Actualmente, esta función se está implementando como un experimento.

  • Descartar las solicitudes UpdateVehicle que solo contienen un valor “Sin procesar” ubicación.

  • Corrige la condición de carrera en "Descripción general de la ruta" API ALFA.

v4.4.1 (18 de noviembre de 2022)

Correcciones de errores

  • Se corrigió un error en la lógica de carga de tráfico.

Cambios adicionales

  • Mejoras internas en los encabezados de solicitudes y los informes de códigos de estado.

v4.4.0 (21 de septiembre de 2022)

Correcciones de errores

  • Se ha corregido un error que impedía la opción "Conducir con Google Maps" notificación si no se borró la instancia de la API.

Cambio de dependencia

  • Actualiza la dependencia del SDK de Navigation a la versión 4.2.2.

v4.3.0 (24 de agosto de 2022)

Mejoras internas.

Anuncio: Se congela la compatibilidad con Android 5 (21 de julio de 2022)

En nuestra última versión del SDK (v4.2.0), lo que brinda un año adicional de compatibilidad con las apps que se ejecutan en Android 5, Niveles de API 21 y 22.

Qué significa:

  • El SDK de Navigation y el SDK de Driver que se ejecutan en tus apps para Android admitirán una Android 5 (nivel de API 21) como mínimo hasta el 30 de junio de 2023
  • Después del 30 de junio de 2023, solo admitiremos los niveles de API 23 y versiones posteriores de Android. En otras palabras, dejaremos de admitir los niveles de API 21 y 22 de Android en todas las versiones del SDK posteriores a esa fecha. Esto significa que los errores relacionados con Android 21 o 22 en cualquier versión del SDK (incluida la 4.x), ni garantizar que los SDKs se comporten correctamente.

Este aviso anula el aviso de bloqueo de compatibilidad de Android 21 y 22 de junio. y las versiones 23, 24 y 25 de Android admiten el bloqueo a partir del 18 de octubre de 2021.

v4.2.0 (8 de junio de 2022)

Cambio de dependencia

  • Actualiza la dependencia del SDK de Nav a la versión 4.1.3.
  • Cambia a una versión inferior el nivel mínimo de API de Android compatible a 21.

v4.1.0 (28 de abril de 2022)

Actualizaciones de API

  • Se cambió el nombre de la propiedad parentId del objeto Task a trackingId. El viejo La propiedad aún existe por ahora, pero dejó de estar disponible.

v4.0.0 (29 de noviembre de 2021)

El nivel de API de Android mínimo compatible con esta versión es 23.

Actualizaciones de API

En esta versión, el SDK de Driver para Android se actualizó con las siguientes características: cambios.

Cambio de la API de VehicleStops

Los objetos VehicleStop ahora hacen referencia a una lista de TaskInfo en lugar de una lista de Task objetos. Si necesitas el estado de Task, se recomienda que lo hagas en el código de tu aplicación.

  • Se agregó una nueva clase: TaskInfo

  • Se reemplazó la función getTasks de VehicleStop por la getTaskInfoList .

  • Se reemplazó la función setTasks de VehicleStop.Builder por la setTaskInfoList .

Supervisión de fallas

Se agregaron la supervisión de fallas y los informes de fallas para mejorar la estabilidad del SDK. Esta función está habilitada de forma predeterminada, pero puedes inhabilitarla si llamas setAbnormalTerminationReportingEnabled() y pásale un valor de false. antes de inicializar el SDK.

Async getRemainingVehicleStops

Autenticación

Se quitaron las propiedades innecesarias de la interfaz AuthTokenContext. El elemento ServiceType dejó de estar disponible. Ahora, solo debes recibir reclamos por incluyó el ID del vehículo y el ID de tarea, en lugar de depender de ServiceType.

18 de octubre de 2021: se congela la compatibilidad con los niveles de API 23, 24 y 25.

Leer anuncio del 18 de octubre

En respuesta a los cambios en nuestras dependencias internas, el nivel 23 de la API de Android, 24 y 25 (Android 6, 7.0 y 7.1) no serán compatibles con las nuevas versiones. de los SDKs de Navigation y Driver para Android, a partir del tercer trimestre de 2022.

Se lanzaron los SDK de Navigation y Driver para las versiones de Android a partir de la tercera versión. de 2022 solo admitirá dispositivos que ejecuten un mínimo de Nivel 26 de la API de Android.

Versiones de la app compiladas con la versión 4.x o anterior de los SDK de Navigation y Driver para Android seguirá funcionando en dispositivos con Android API nivel 25 e inferiores.

v3.0.4 (28 de julio de 2021)

Funciones

Con esta versión, el SDK de Driver separadas del SDK de Navigation. Consulta la guía de migración para conocer los detalles.

Actualizaciones de API

Se agregaron los siguientes métodos:

RidesharingDriverApi.getDriverSdkVersion()

Estabilidad y corrección de errores

Informar errores PERMISSION_DENIED en lugar de clasificarlos como errores de conexión.

Anuncio de baja (21 de junio de 2021)

En este anuncio, se describen las bajas del SDK de Driver para Android. y el SDK de Navigation para Android a partir de la fecha indicada anteriormente. Este anuncio también se envió como anuncio de servicio obligatorio (MSA). a los clientes afectados.

Para simplificar la integración de los clientes y acelerar nuestra capacidad de ofrecer dividimos el SDK de Navigation para Android y SDK de Driver para Android en dos objetos binarios diferentes:

  • SDK de Navigation para Android, que proporcionará navegación y enrutamiento para los conductores.
  • SDK de Driver para Android, que te permitirá aprovechar Fleet Servicios web con estado de Engine para el progreso y la asignación de viajes o tareas.

Ten en cuenta que el SDK de Driver para Android tiene una dependencia obligatoria en SDK de Navigation para Android para las funciones principales de enrutamiento.

¿Cuáles son los cambios?

Estos son los cambios principales de la v3:

  • Dos objetos binarios en lugar de uno
  • Definiciones de paquetes más claras para las clases del SDK de Driver para Android.
  • El SDK de Navigation para Android incluye el SDK de Maps para Android. como parte del paquete (a partir de la versión 2 del SDK de Navigation para Android).
    • Esto permite que los componentes de navegación y mapas coexistan en el mismo mapa. (como el dibujo de polilíneas en un objeto NavigationView) y reduce el uso de memoria ya que se usa un solo mapa en lugar de dos.
    • El SDK de Navigation para Android 3.0 carece de paridad de funciones completa con el Navigation SDK para Android, pero la versión 3.2 resolverá la mayoría de los problemas aquí. Consulta ¿Qué puedo hacer? ¿cuándo? para obtener más información.
  • Registro que nos facilitará la depuración de los problemas que puedas encontrar.

Los siguientes métodos también se quitaron en la v3, ya que antes se están marcados como obsoletos y para los que ya hay una solución alternativa existe:

  • Los siguientes métodos del SDK de Nav/Driver dejaron de estar disponibles en la versión 1.16, lanzados el el 10 de agosto de 2020 y se quitaron de la versión 3.0:
    • Waypoint#fromLatLng(*)
    • Waypoint#fromPlaceId(*)
    • Navigator#startGuidance(resumeIntent)
    • NavigationApi#initForegroundServiceManager(*)
  • Por cuestiones de integridad y claridad, ten en cuenta que se quitaron varios métodos en la transición de v1 a v2. La mayoría eran consolidaciones de datos entre el SDK de Navigation para Android y la SDK de Maps para Android. Consulta la guía de migración para comprender mejor estos cambios.

Baja del SDK de Driver para Android y la versión 1.x del SDK de Navigation para Android

La versión 1 del SDK de Nav/Driver se lanzó en 2018 y, junto con nuestras versiones v3, pronto lo estarán es hora de dar de baja la v1 para evitar la insostenibilidad y admitir muchas versiones principales.

El tiempo que se ahorra por no tener que admitir esta versión adicional le permitirá para admitir mejor la versión principal más reciente y crear más funciones son importantes para nuestros clientes.

Por lo tanto, la versión 1.x del SDK de Nav/Driver dejó de estar disponible y ya no se mantendrá después del 21 de junio de 2022.

Tómate un momento para ver cómo funcionan las bajas en las versiones del SDK.

Leer el anuncio revocado

La próxima versión 4.0 del SDK de Navigation para Android y El SDK de Driver para Android admitirá un requisito [Android 6.0 (nivel de API 23)](https://developer.android.com/studio/releases/platforms#6.0){: .external}. La versión mínima compatible actual es Android 5.0 (nivel de API 21). Prevemos que el lanzamiento de la versión 4.0 se realizará en el cuarto trimestre de 2021. Esto significa lo siguiente:

  • Las versiones de la app compiladas con versiones anteriores a v4.x seguirán funcionando en Dispositivos con Android 21 y 22 Las apps de tu controlador que integraron nuestro Los SDKs actuales seguirán funcionando en dispositivos que ejecuten Android 21 y versiones posteriores. Esto es lo mismo que antes.
  • Versiones de apps compiladas con el SDK de Driver para Android y SDK de Navigation para Android v4.x (orientado a 4o trim. de 2021, sujeto a cambios) y después no se podrán instalar en dispositivos con Android 21 y 22. La v4.x se ejecutará en Android 6.0 (nivel de API 23), como mínimo de modo que las versiones de tu app compiladas con la próxima versión 4.x solo se podrán recibidos por conductores con dispositivos con Android 23 o versiones posteriores. Una vez más, significa que tanto los cambios relacionados con el SDK como los cambios en las aplicaciones no llegará a los conductores que tengan dispositivos con Android 21 y 22.

Las versiones 3 del SDK de Navigation para Android SDK de Driver para Android v3 al que querrás actualizar se explican en la siguiente tabla, además de cuándo estarán disponibles.

¿Qué funciones de la plataforma Driver usas? ¿Usas estas funciones? Entonces, las primeras versiones disponibles a las que debes actualizar son... Disponibilidad esperada
(sujeta a cambios)
Vínculos de migración
Solo Navigation
(métodos de NavSDK)
No NavSDK v3.0.1 Ahora Guía
NavSDK v3.5 (proyectado) Septiembre de 2021
Seguimiento de navegación y Fleet Engine (métodos NavSDK y DriverSDK) No Versión 3.0 del SDK de Nav y Versión 3.0 del SDK de Driver Guía de migración de Driver v3.0 disponible en el lanzamiento
NavSDK v3.x y DriverSDK v3.0

Para seguir usando los métodos que se quitaron, puedes permanecer en la versión 1.x, pero sin expectativas de asistencia o mantenimiento después del 21 de junio de 2022 (consulta la siguiente sección).

Te recomendamos que migres a la versión 3.x. Esto significa lo siguiente:

* La última versión de la v1.x ocurrirá el 4o trim. de 2021 (y, por lo tanto, la v1 “función inmovilizada” a partir de ese momento).

* Se puede aplicar un parche a esta última versión durante 6 meses, hasta el 21 de junio de 2022. Después de este plazo, no podremos responder a las solicitudes de funciones ni a errores. para la versión 1.x.

Tómate un momento para revisar la siguiente tabla y las [guía de migración](/maps/documentation/navigation-sdk-android/v2/migration) en para ayudarte a atravesar estos cambios.

¿Qué puedo hacer y para cuándo?

Si estás en... ¿Usas estas funciones? Para actualizar ahora Para actualizar en septiembre de 2021 Vínculos de migración
v1.x
(no usa FleetEngine.java / la funcionalidad del controlador)
No NavSDK v3.0 Guía
Sin opción NavSDK 3.x
v1.x
(con la funcionalidad FleetEngine.java / Driver)
No Sin opción NavSDK 3.x +
DriverSDK 3.x
La guía anterior y la guía de migración Driver v3.0 disponible en el lanzamiento.

Recomendamos que notifiques a tus conductores con dispositivos en Android 21 y 22 para actualizar a una versión más reciente de Android (como mínimo, Android 6.0) antes de Integrar el SDK de Driver para Android y el SDK de Navigation para Android. versión 4.x y posteriores en tu app de controlador.

v1.15.3 (9 de octubre de 2020)

Actualizaciones de API

  • El SDK de Driver ahora se suscribe al SDK de Navigation para recibir actualizaciones de tráfico. que se envían a la API de Fleet Engine.

Estabilidad y corrección de errores

  • Se corrigió una falla del entorno de ejecución de gRPC.

v1.15.2

Funciones

Se agregó la capacidad de detener las notificaciones persistentes. Si los informes de ubicación se detiene en la instancia de Fleet Engine, la orientación se detiene en Navigator todos los objetos de escucha de navegación no están registrados, y NavigationFragment o NavigationView está detenida.

Estabilidad y corrección de errores

  • Se corrigió un error que causaba que se arrojara una excepción si se borraba la instancia de Fleet Engine.

v1.15.1 (12 de mayo de 2020)

Funciones

El análisis preliminar de los datos de la versión 1.15.0 indicó mejoras significativas. en informes de ubicaciones estables (reducción de ubicaciones “atasadas”). Esta corrección de parche permite que los informes de ubicación mejorados continúen. El problema de ANR no estaba relacionado a estas mejoras.

Estabilidad y corrección de errores

  • Se corrigió un error que a veces causaba una línea recta al principio. de la ruta que se mostrará en la app para consumidores.
  • Se corrigió un error que podía provocar un error de ANR cuando se informaban ubicaciones. por el SDK. Esto se debió a onArrival() mejoras que se susceptibles a la contención de bloqueo. Pudimos reproducir los errores de ANR de manera confiable en algunas circunstancias y pudimos verificar que las correcciones resolvieron el problema. La app de prueba modificada para producir los errores de ANR se ejecutó durante ocho horas. sin un error de ANR después de la corrección.

v1.15.0 (23 de marzo de 2019)

Funciones

  • Se introdujo el estado de las indicaciones de navegación en los eventos de inicio, desvío y llegada. para mejorar el seguimiento de la ubicación del vehículo.
  • Se agregó la capacidad de seguir obteniendo independientes de las ubicaciones de rutas instantáneas. del estado de navegación.
  • Se agregó información adicional sobre las ubicaciones ajustadas previamente a la ruta, como la precisión.

Estabilidad y corrección de errores

  • Se aumentó la minSdkVersion de navsdk a 19.
  • Se corrigió un error que causaba que no se respetaran los nombres de puntos de referencia de latitud y longitud cuando falla la geocodificación inversa del servidor.

Lanzamiento de v1.14.2 (2 de febrero de 2019)

Funciones

  • Impide que el DriverSDK envíe 0,0 ubicaciones a Fleet Engine (mejor el intercambio de recorridos y las entradas de ubicación de asignación).
  • Registro adicional para mejorar los problemas de ubicación atascada y reducir y resguardos para compartir recorridos.
  • Ignora las llamadas repetidas a setLocationReportingInterval(), a menos que cambie el intervalo.
  • Se actualizaron los javadocs del método setReportingInterval() con el objetivo. de desalentar las llamadas repetidas a este método a una tasa alta relativa a los intervalos que se utilizan.
  • Se mejoró la confiabilidad de la ubicación de la API 29.

v1.13.0

Estabilidad y corrección de errores

  • Se agregó una dependencia en okhttp que los clientes tendrán que agregar a sus compilaciones de Gradle.

v1.11.7 (18 de octubre de 2019)

Estabilidad y corrección de errores

  • Las actualizaciones de ubicación ahora continúan después de que se activa onArrival() durante un destino determinado.
  • La notificación predeterminada (una cadena constante en el modo Free Nav) coincide con el esquema de colores establecido para las notificaciones de navegación. Para obtener más información, consulta Notificaciones persistentes compartidas.
  • Se solucionó un problema por el que un evento de actualización de ubicación demorado podía provocar una una actualización de ubicación falsa, lo que causa artefactos, como una línea recta en la al comienzo de una ruta.

v1.11.6 (4 de octubre de 2019)

Actualizaciones de API

  • Se introdujo una serie de cambios que garantizan que se reanude el SDK de Driver. la ubicación se actualiza con rapidez tras una falla de red. Una vez que la conexión de red se restableció, las actualizaciones de ubicación comenzarán de nuevo en la siguiente ubicación programada actualización.

Estabilidad y corrección de errores

  • setVehicleState() ahora regresa de inmediato. La actualización de FleetEngine ahora se realiza en segundo plano conversación. Soluciona un problema del tipo Aplicación no responde (ANR).
  • Se solucionó un problema que hacía que las rutas para compartir recorridos se mostraran como en línea recta con versiones anteriores del SDK para consumidores. Garantiza que ninguna El SDK de Driver agrega puntos de referencia únicos a la ruta.