Notes de version du SDK Driver pour Android

Cette section contient les notes de version du SDK Driver pour Android.

v5.0.0 (12 septembre 2023)

Modifications des dépendances et de la configuration

  • Mise à jour du SDK Navigation vers la version 5.x.
  • Mise à niveau de minSdkVersion vers l'API 23.
  • Mise à niveau de la version de Kotlin vers la version 1.9.0.
  • Ajout de la dépendance à Room.
  • Les applications qui utilisent le SDK Driver doivent désormais disposer du niveau targetSdkVersion d'API 31 ou supérieur.
  • Les applications qui utilisent le SDK Driver doivent désormais activer la compatibilité avec la bibliothèque Java 8. Consultez https://developer.android.com/studio/write/java8-support pour obtenir des instructions de mise à jour.
  • Les applications qui utilisent ProGuard ou Dexguard doivent migrer vers R8. Pour en savoir plus, consultez https://developer.android.com/build/shrink-code.
  • Les applications qui utilisent le SDK Driver doivent activer le désucrage. Pour obtenir des instructions, consultez https://developer.android.com/studio/write/java8-support#library-desugaring.

Corrections de bugs

  • Résolution du problème lié à la synchronisation de disabledLocationTracking.
  • Introduction de la nouvelle interface DriverStatusListener, qui signale une cause dans les mises à jour de l'état des exceptions.
  • Résolution du problème lié aux conducteurs à l'arrêt (disponible à partir de la version 4.99.0).

v4.99.0 (9 août 2023)

  • Prise en charge d'une plage de versions pour la dépendance du NavSDK. ** Compatible avec les versions 4.5.0 à 5.0.0 (non incluses).
  • Évitez que l'heure d'arrivée prévue ne diminue automatiquement lorsque le véhicule est à l'arrêt. Cette modification est déployée progressivement sous forme de test. Par conséquent, toutes les applications ne la verront pas en même temps.

v4.5.0 (12 mai 2023)

  • Mise à jour de la dépendance du SDK Navigation vers la version 4.5. Notez que les ID de groupe et d'artefact du SDK Navigation ont changé.

v4.4.3 (20 mars 2023)

Modification de la dépendance

  • Mise à niveau de la dépendance du SDK Navigation vers la version 4.4.1.

v4.4.2 (15 février 2023)

Corrections de bugs

  • Améliorez le délai de récupération du réseau lorsque le SDK rencontre un problème de connexion temporaire. Cette fonctionnalité est en cours de déploiement sous forme de test.

  • Supprimez les requêtes UpdateVehicle qui ne contiennent qu'un emplacement "brut".

  • Correction de la condition de concurrence dans l'API ALPHA "Présentation de l'itinéraire".

v4.4.1 (18 novembre 2022)

Corrections de bugs

  • Correction d'un bug dans la logique d'importation du trafic.

Changements supplémentaires

  • Améliorations internes des rapports sur les en-têtes de requête et les codes d'état.

v4.4.0 (21 septembre 2022)

Corrections de bugs

  • Correction d'un bug qui empêchait la suppression de la notification "En voiture avec Google Maps" si l'instance d'API n'était pas effacée.

Modification de la dépendance

  • Mise à niveau de la dépendance du SDK Navigation vers la version 4.2.2.

v4.3.0 (24 août 2022)

Améliorations internes.

Annonce: gel de la prise en charge d'Android 5 (21 juillet 2022)

Pour la dernière version du SDK (v4.2.0), nous fournissons une année supplémentaire de prise en charge des applications exécutées sur Android 5, pour les niveaux d'API 21 et 22.

Ce que cela signifie :

  • Le SDK Navigation et le SDK Driver exécutés sur vos applications Android prendront en charge Android 5 (niveau d'API 21) au minimum jusqu'au 30 juin 2023.
  • Après le 30 juin 2023, nous n'accepterons que les API Android de niveau 23 ou supérieur. En d'autres termes, nous cesserons de prendre en charge les niveaux d'API 21 et 22 d'Android pour toutes les versions du SDK après cette date. Cela signifie que les bugs liés à Android 21 ou 22 dans n'importe quelle version du SDK (y compris la version 4.x) ne seront pas corrigés, et nous ne garantissons pas que les SDK se comporteront correctement.

Cet avis remplace l'avis de gel de compatibilité d'Android 21 et 22 du 21 juin 2021, et celui d'Android 23, 24 et 25 à partir du 18 octobre 2021.

v4.2.0 (8 juin 2022)

Modification de la dépendance

  • Mise à niveau de la dépendance du SDK Nav vers la version 4.1.3.
  • Retour au niveau d'API Android minimal compatible jusqu'à 21.

v4.1.0 (28 avril 2022)

Mises à jour de l'API

  • La propriété parentId de l'objet Task a été renommée trackingId. L'ancienne propriété existe toujours pour le moment, mais est obsolète.

  • Modification de certains types renvoyés de Future à ListenableFuture, plus spécifique, et de List à ImmutableList, plus spécifique.

v4.0.0 (29 novembre 2021)

Le niveau d'API Android minimal compatible avec cette version est 23.

Mises à jour de l'API

Dans cette version, le SDK Driver pour Android a été mis à jour avec les modifications suivantes.

Modification de l'API VehicleStops

Les objets VehicleStop font désormais référence à une liste d'objets TaskInfo au lieu d'une liste d'objets Task. Si vous avez besoin de l'état d'une tâche, nous vous encourageons à le suivre dans le code de votre application.

  • Nouvelle classe ajoutée: TaskInfo

  • Remplacement de la fonction getTasks de VehicleStop par la fonction getTaskInfoList.

  • Remplacement de la fonction setTasks de VehicleStop.Builder par la fonction setTaskInfoList.

Surveillance des plantages

Nous avons ajouté des fonctionnalités de surveillance et de création de rapports des plantages pour améliorer la stabilité du SDK. Cette fonctionnalité est activée par défaut, mais vous pouvez la désactiver si vous appelez setAbnormalTerminationReportingEnabled() et lui transmettez la valeur false avant d'initialiser le SDK.

Fonctionnalité de récupération de données asynchrone

Authentification

Suppression des propriétés inutiles de l'interface AuthTokenContext. Abandon de ServiceType. Désormais, vous n'avez besoin d'obtenir que les revendications pour l'ID de véhicule et l'ID de tâche inclus, au lieu d'utiliser ServiceType.

18 octobre 2021 : gel de la prise en charge des niveaux d'API 23, 24 et 25.

Lire l'annonce du 18 octobre

En réponse aux modifications de nos dépendances internes, les niveaux d'API 23, 24 et 25 (Android 6, 7.0 et 7.1) ne seront plus compatibles avec les nouvelles versions des SDK Navigation et Driver pour Android à partir du troisième trimestre 2022.

Les SDK Navigation et Driver pour Android publiés à partir du troisième trimestre 2022 ne seront compatibles qu'avec les appareils exécutant au minimum le niveau d'API 26 d'Android.

Les versions de l'application conçues avec la version 4.x ou antérieure des SDK Navigation et Driver pour Android continueront de fonctionner sur les appareils exécutant Android niveau d'API 25 ou inférieur.

v3.0.4 (28 juillet 2021)

Caractéristiques

Avec cette version, le SDK Driver est officiellement séparé du SDK Navigation. Pour en savoir plus, consultez le guide de migration.

Mises à jour de l'API

Ajout des méthodes suivantes:

DeliveryDriverApi.getDriverSdkVersion()

Stabilité et corrections de bugs

Signalez les erreurs PERMISSION_DENIED au lieu de les classer en tant qu'erreurs de connexion.

Annonce de l'abandon (21 juin 2021)

Cette annonce décrit les abandons du SDK Driver pour Android et du SDK Navigation pour Android à la date indiquée ci-dessus. Cette annonce a également été envoyée sous forme d'annonce obligatoire sur le service aux clients concernés.

Pour simplifier l'intégration client et accélérer le déploiement de fonctionnalités utiles, nous avons divisé le SDK Navigation pour Android et le SDK Driver pour Android en deux fichiers binaires différents:

  • SDK Navigation pour Android, qui fournit des fonctionnalités de navigation et d'itinéraire à vos conducteurs.
  • Le SDK Driver pour Android, qui vous permet d'exploiter les services Web avec état Fleet Engine pour la progression et l'allocation des trajets ou des tâches.

Veuillez noter que le SDK Driver pour Android nécessite une dépendance au SDK Navigation pour Android pour les fonctions de routage principales.

Quels changements avez-vous apportés au lecteur réduit ?

Voici les principales modifications apportées à la version 3:

  • Deux binaires au lieu d'un.
  • Définitions de package plus claires pour les classes du SDK Driver pour Android.
  • Le SDK Navigation pour Android inclut le SDK Maps pour Android dans son package (à partir du SDK Navigation pour Android v2).
    • Les cartes et les éléments de navigation peuvent ainsi coexister sur la même carte (par exemple, dessiner des polylignes sur un NavigationView), et l'utilisation de la mémoire est réduite, puisqu'une seule carte est utilisée au lieu de deux.
    • Le SDK Navigation pour Android 3.0 n'offre pas toutes les mêmes fonctionnalités que le SDK Navigation pour Android, mais la version 3.2 permettra de résoudre la plupart des problèmes. Consultez la section Que puis-je faire et quand ? pour en savoir plus.
  • Logging qui nous permettra de déboguer plus facilement les problèmes que vous pourriez rencontrer.

Les méthodes suivantes ont également été supprimées dans la version 3, après avoir été marquées comme obsolètes et pour lesquelles une autre solution existe déjà:

  • Les méthodes suivantes du SDK Nav/Driver ont été abandonnées dans la version 1.16, publiée le 10 août 2020, et ont été supprimées dans la version 3.0 :
    • Waypoint#fromLatLng(*)
    • Waypoint#fromPlaceId(*)
    • Navigator#startGuidance(resumeIntent)
    • NavigationApi#initForegroundServiceManager(*)
  • Par souci d'exhaustivité et de clarté, notez que plusieurs méthodes ont été supprimées lors de la transition de la v1 à la v2. Il s'agissait pour la plupart de consolidations des classes en double entre le SDK Navigation pour Android et le SDK Maps pour Android. Veuillez consulter le guide de migration pour mieux comprendre ces modifications.

Abandon du SDK Driver pour Android et du SDK Navigation pour Android v1.x

La version 1 du SDK Nav/Driver a été publiée en 2018. Avec nos versions 3 qui seront bientôt publiées, il est temps d'abandonner la version 1 pour éviter que la prise en charge de nombreuses versions majeures ne soit un risque pour la durabilité.

Le temps gagné grâce à l'absence de compatibilité avec cette version supplémentaire nous permettra de mieux prendre en charge la dernière version majeure et de créer davantage de fonctionnalités importantes pour nos clients.

Ainsi, la version 1.x du SDK Nav/Driver est désormais obsolète et ne sera plus gérée après le 21 juin 2022.

Veuillez prendre quelques instants pour découvrir le fonctionnement des abandons dans les versions du SDK.

Lire l'annonce révoquée

La prochaine version 4.0 du SDK Navigation pour Android et du SDK Driver pour Android prendra en charge au minimum [Android 6.0 (niveau d'API 23)](https://developer.android.com/studio/releases/platforms#6.0){: .external}. La version minimale actuellement prise en charge est Android 5.0 (niveau d'API 21). La version 4.0 devrait être publiée au 4e trimestre 2021. Ainsi :

  • Les versions d'application conçues avec des versions antérieures à la version 4.x continueront de fonctionner sur les appareils Android 21 et 22. Vos applications de pilote qui intègrent nos SDK actuels continueront de fonctionner sur les appareils équipés d'Android 21 ou version ultérieure. Ce fonctionnement reste le même.
  • Les versions 1 et ultérieures du SDK Driver pour Android et du SDK Navigation pour Android v4.x (prévues pour le 4e trimestre 2021, sous réserve de modification) ne pourront plus être installées sur les appareils équipés d'Android 21 et 22. La version 4.x s'exécutera sur Android 6.0 au minimum (niveau d'API 23). Les versions de votre application associées à la version 2 et à la version 4 seront donc installées sur les appareils équipés du SDK Android 2 ou version 2.

Les versions du SDK Navigation pour Android v3 et du SDK pilote pour Android v3 que vous souhaitez mettre à niveau sont expliquées dans le tableau suivant, ainsi que les dates de disponibilité.

Quelles fonctionnalités de la plate-forme pilote utilisez-vous ? Utilisez-vous ces fonctionnalités ? Les premières versions disponibles vers lesquelles vous devriez effectuer une mise à niveau sont... Disponibilité prévue
(susceptible d’être modifiée)
Liens de migration
Navigation uniquement
(méthodes NavSDK)
Non NavSDK v3.0.1 Maintenant Guide
Oui NavSDK v3.5 (prévision) sept. 2021
Navigation et suivi Fleet Engine (méthodes NavSDK et DriverSDK) Non SDK Nav v3.0 et Driver v3.0 Guide de migration des pilotes v3.0 disponible dès la version
Oui NavSDK v3.x et DriverSDK v3.0

Pour continuer à utiliser les méthodes supprimées, vous pouvez continuer à utiliser la version 1.x, mais sans vous attendre à une assistance ni à une maintenance après le 21 juin 2022 (voir la section suivante).

Nous vous recommandons de migrer vers la version 3.x. Ainsi :

* La dernière version de la v1.x sera disponible au 4e trimestre 2021. La v1 sera donc "fonctionnalité figée".

* Cette dernière version peut être corrigée pendant six mois après, et ce, jusqu'au 21 juin 2022. Passé ce délai, nous ne serons plus en mesure de répondre aux demandes de bugs ni de demandes de fonctionnalités concernant la version 1.x.

Veuillez prendre quelques instants pour consulter le tableau suivant et le [guide de migration](/maps/documentation/navigation-sdk-android/v2/migration) pour vous aider à comprendre ces modifications.

Que puis-je faire ?

Si vous utilisez actuellement... Utilisez-vous ces fonctionnalités ? Mettre à niveau maintenant Pour passer à une édition supérieure en septembre 2021 Liens de migration
v1.x
(n'utilise pas les fonctionnalités FleetEngine.java / pilote)
Non NavSDK v3.0 Guide
Oui Aucune option disponible NavSDK 3.x
v1.x
(avec la fonctionnalité FleetEngine.java / pilote)
Non Aucune option disponible NavSDK 3.x +
DriverSDK 3.x
Le guide ci-dessus, ainsi que le guide de migration des pilotes v3.0 disponibles dès la version
Oui

Nous vous recommandons d'informer les conducteurs équipés d'appareils équipés d'Android 21 et 22 qu'ils passent à une version plus récente d'Android (Android 6.0 ou version ultérieure) avant d'intégrer le SDK Driver pour Android et le SDK Navigation pour Android version 4.x ou ultérieure à votre application de pilote.

v1.15.3 (9 octobre 2020)

Mises à jour de l'API

  • Le SDK Driver s'abonne désormais au SDK Navigation pour recevoir les mises à jour du trafic qui sont envoyées à l'API Fleet Engine.

Stabilité et corrections de bugs

  • Correction d'un plantage de l'environnement d'exécution gRPC.

v1.15.2

Caractéristiques

Ajout de la possibilité d'arrêter les notifications persistantes. Si la mise à jour de la position est arrêtée dans l'instance Fleet Engine, le guidage est arrêté dans Navigator, tous les écouteurs de navigation sont annulés, et NavigationFragment ou NavigationView est suspendu.

Stabilité et corrections de bugs

  • Correction d'un bug qui provoquait la génération d'une exception si l'instance Fleet Engine était effacée.

v1.15.1 (12 mai 2020)

Caractéristiques

L'analyse préliminaire des données 1.15.0 a indiqué des améliorations significatives de la mise à jour de la position stable (réduction des emplacements "bloqués"). Ce correctif permet de poursuivre la mise à jour de la position améliorée. Le problème ANR n'était pas lié à ces améliorations.

Stabilité et corrections de bugs

  • Correction d'un bug qui entraînait parfois l'affichage d'une ligne droite au début de l'itinéraire dans l'application grand public.
  • Correction d'un bug qui pouvait entraîner une erreur ANR lorsque des emplacements étaient signalés par le SDK. Cela résulte des améliorations de onArrival() qui étaient susceptibles de provoquer des conflits de verrouillage. Nous avons pu reproduire les erreurs ANR de manière fiable dans certaines circonstances et vérifier que les correctifs ont résolu le problème. L'application de test modifiée pour générer les erreurs ANR a fonctionné pendant huit heures sans erreur ANR après le correctif.

v1.15.0 (23 mars 2019)

Caractéristiques

  • Introduction de l'état des indications de navigation lors des événements de départ, de sortie d'itinéraire et d'arrivée afin d'améliorer le suivi de la position des véhicules.
  • Ajout de la possibilité de continuer à obtenir des lieux enregistrés par la route indépendamment de l'état de navigation.
  • Ajout d'informations supplémentaires sur les lieux identifiés avant la sortie des routes, telles que la précision.

Stabilité et corrections de bugs

  • Augmentation de la valeur minSdkVersion de navsdk à 19.
  • Correction d'un bug qui empêchait le respect des noms des points de cheminement de latitude/longitude en cas d'échec du geocoding inversé côté serveur.

Version v1.14.2 (2 février 2019)

Caractéristiques

  • Empêche le DriverSDK d'envoyer 0 position à Fleet Engine (meilleures informations de partage du parcours et d'allocation de lieux).
  • Journalisation supplémentaire pour améliorer les problèmes de localisation bloquée et réduire les remplacements pour le partage de trajets.
  • Ignore les appels répétés à setLocationReportingInterval(), sauf si l'intervalle change.
  • Mise à jour des javadocs pour la méthode setReportingInterval() afin de décourager les appels répétés de cette méthode à un taux élevé par rapport aux intervalles utilisés.
  • Amélioration de la fiabilité de la localisation avec l'API 29.

v1.13.0

Stabilité et corrections de bugs

  • Ajoute une dépendance sur okhttp que les clients devront ajouter à leurs builds Gradle.

v1.11.7 (18 octobre 2019)

Stabilité et corrections de bugs

  • Les mises à jour des positions se poursuivent désormais après le déclenchement de onArrival() pour une destination donnée.
  • La notification par défaut (chaîne constante en mode de navigation libre) correspond au jeu de couleurs défini pour les notifications de navigation. Pour en savoir plus, consultez la section Notifications persistantes partagées.
  • Un problème de mise à jour de position retardé pouvait entraîner une fausse mise à jour de la position, qui entraînait par exemple une ligne droite au début d'un itinéraire.

v1.11.6 (4 octobre 2019)

Mises à jour de l'API

  • Introduction d'une série de modifications garantissant que le SDK Driver reprend les mises à jour de position rapidement après une défaillance du réseau. Une fois la connexion réseau restaurée, les mises à jour de la position redémarrent à la prochaine mise à jour de position programmée.

Stabilité et corrections de bugs

  • setVehicleState() s'affiche désormais immédiatement. La mise à jour de FleetEngine s'effectue désormais sur un thread en arrière-plan. Résolution d'un problème ANR (L'application ne répond pas).
  • Correction d'un problème qui entraînait l'affichage des routes de partage de parcours sous forme de ligne droite à l'aide d'anciennes versions du SDK consommateur. S'assure qu'aucun point de cheminement ponctuel n'est ajouté à l'itinéraire par le SDK Driver.