Cette section contient les notes de version du Driver SDK pour Android.
Annonce : arrêt de la prise en charge des niveaux d'API 23, 24 et 25
Conformément au Règlement sur la compatibilité avec les versions d'OS mobiles, nous allons geler la prise en charge d'Android 6 et 7 (niveaux d'API 23, 24 et 25) dans les prochaines versions majeures du Driver SDK pour Android.
Les versions du Driver SDK pour Android publiées à partir du quatrième trimestre 2025 seront compatibles avec Android 8 (niveau d'API 26) au minimum. Les versions antérieures du SDK continueront de prendre en charge Android 6 et 7.
Si vos dépendances ne spécifient pas de numéro de version, votre IDE chargera la dernière version du SDK et les nouvelles versions de votre application ne seront pas compatibles avec Android 6 et 7.
Spécifiez une version du Driver SDK pour Android dans les dépendances de compilation de votre application afin de contrôler le moment où vous augmentez l'OS minimal requis pour les nouvelles versions de votre application.
v6.2.0 (18 juin 2025)
Correction de bugs
- Correction du plantage de
NullPointerException
lors de l'appel deDriverApi.createInstance()
lorsqu'aucunDriverStatusListener
n'est fourni.
Modifications des dépendances et de la configuration
À partir de la version 6.2.0 du Driver SDK pour Android, les applications doivent passer à Kotlin 2.1.
Mise à jour des versions du SDK Navigation compatibles, y compris la version 6.1.0 et les versions ultérieures.
v6.1.0 (10 mars 2025)
Correction de bugs
- Améliorations apportées à la journalisation interne.
v5.99.1 (10 janvier 2025)
Correction de bugs
- Correction d'un problème où les pilotes recevaient des erreurs gRPC avec le code "INTERNAL" et un message "Panic! Description "C'est un bug !" lors du premier lancement de l'application après l'installation.
v6.0.0 (25 novembre 2024)
Correction de bugs
- Correction d'un problème qui entraînait l'affichage d'erreurs gRPC avec le code "INTERNAL" et le message "Panic! This is a bug!" description.
- Amélioration interne visant à réduire les erreurs de connexion lors de la mise à jour de la position, en particulier lorsque l'appareil change de réseau. Cette fonctionnalité sera déployée progressivement (à partir de 0 %) une fois la version intégrée.
Nouveautés concernant l'API
- Suppression de l'interface obsolète
StatusListener
.
Modifications des dépendances et de la configuration
- Supprimez la dépendance à
glide:cronet-integration
dans le fichier POM.xml. - Mise à jour des versions compatibles du SDK Navigation vers la version 5.x.
- À partir de la version 6.0.0 du Driver SDK pour Android, les applications doivent passer à Kotlin 2.0.
- targetSdk est désormais au niveau d'API 34. Cette exigence s'applique à toutes les applications déployées sur le Google Play Store depuis août 2024. Consultez Respecter le niveau d'API cible requis par Google Play.
v5.99.0 (20 septembre 2024)
Correction de bugs
- Correction d'un problème qui entraînait l'affichage d'erreurs gRPC avec le code "INTERNAL" et le message "Panic! This is a bug!" description. Cette fonctionnalité sera déployée progressivement (à partir de 0 %) une fois la version intégrée.
- Amélioration interne visant à réduire les erreurs de connexion lors de la mise à jour de la position, en particulier lorsque l'appareil change de réseau. Cette fonctionnalité sera déployée progressivement (à partir de 0 %) une fois la version intégrée.
Modifications des dépendances et de la configuration
- Supprimez la dépendance à
glide:cronet-integration
dans le fichier POM.xml.
v5.0.0 (12 septembre 2023)
Modifications des dépendances et de la configuration
- Le SDK Navigation a été mis à jour 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.
- Dépendance ajoutée à Room.
* Les applications qui utilisent le Driver SDK doivent désormais avoir
targetSdkVersion
de l'API 31 ou version ultérieure. - Les applications qui utilisent le Driver SDK 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 sur la 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 Driver SDK doivent activer le desugaring. Pour obtenir des instructions, consultez https://developer.android.com/studio/write/java8-support#library-desugaring.
Correction de bugs
- Correction d'un problème de synchronisation de disableLocationTracking.
- Introduction d'une nouvelle interface DriverStatusListener qui signale une cause dans les mises à jour de l'état des exceptions.
- Correction d'un problème pour les conducteurs qui restent à l'arrêt (disponible à partir de la version 4.99.0).
v4.99.0 (9 août 2023)
- Prend en charge différentes versions de la dépendance NavSDK. ** Compatible avec la version 4.5.0 jusqu'à la version 5.0.0 (non incluse).
- empêcher l'heure d'arrivée estimée de diminuer d'elle-même 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 simultanément.
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)
Correction de bugs
Améliorer le temps de récupération du réseau lorsque le SDK rencontre un problème de connexion temporaire. Il s'agit d'une correction expérimentale.
Supprimez les requêtes
UpdateVehicle
qui ne contiennent qu'un emplacement "Brut".Correction d'une condition de concurrence dans l'API ALPHA "Vue d'ensemble de l'itinéraire".
v4.4.1 (18 novembre 2022)
Correction de bugs
- Correction d'un bug dans la logique d'importation du trafic.
Changements supplémentaires
- Améliorations internes apportées aux en-têtes de requête et aux rapports de code d'état.
v4.4.0 (21 septembre 2022)
Correction de bugs
- Correction d'un bug qui empêchait la suppression de la notification "Conduite avec Google Maps" si l'instance de l'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 : Arrêt de la prise en charge d'Android 5 (21 juillet 2022)
Pour notre dernière version du SDK (v4.2.0), nous fournissons une année supplémentaire d'assistance pour les applications exécutées sur Android 5, pour les niveaux d'API 21 et 22.
Ce que cela signifie :
- Les SDK Navigation et Driver exécutés sur vos applications Android seront compatibles avec Android 5 (niveau d'API 21) au minimum jusqu'au 30 juin 2023.
- Après le 30 juin 2023, nous ne prendrons en charge que les niveaux d'API Android 23 et supérieurs. En d'autres termes, nous ne prendrons plus en charge les niveaux d'API Android 21 et 22 dans 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 du 21 juin 2021 concernant le gel de la compatibilité avec Android 21 et 22, ainsi que l'avis du 18 octobre 2021 concernant le gel de la compatibilité avec Android 23, 24 et 25.
v4.2.0 (8 juin 2022)
Modification de la dépendance
- Mettez à niveau la dépendance du SDK Navigation vers la version 4.1.3.
- Rétrogradation du niveau d'API Android minimal accepté à 21.
v4.1.0 (28 avril 2022)
Nouveautés concernant l'API
La propriété
parentId
de l'objetTask
a été renomméetrackingId
. L'ancienne propriété existe toujours pour le moment, mais elle est obsolète.
v4.0.0 (29 novembre 2021)
Le niveau d'API Android minimal accepté pour cette version est 23.
Nouveautés concernant l'API
Pour cette version, le Driver SDK 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 de la tâche, nous vous encourageons à le suivre dans le code de votre application.
Ajout d'une nouvelle classe :
TaskInfo
Remplacement de la fonction
getTasks
deVehicleStop
par la fonctiongetTaskInfoList
.Remplacement de la fonction
setTasks
deVehicleStop.Builder
par la fonctionsetTaskInfoList
.
Surveillance des plantages
La surveillance et le signalement des plantages ont été ajoutés 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.
- Ajout de la fonction
setAbnormalTerminationReportingEnabled
àDriverApi
.
Async getRemainingVehicleStops
- La fonction
getRemainingVehicleStops
deDeliveryVehicleReporter
renvoie désormais un Future<List<VehicleStop>> au lieu d'une List<VehicleStop>.
Authentification
Suppression des propriétés inutiles de l'interface AuthTokenContext
.
ServiceType
est obsolète. Vous n'avez plus besoin d'obtenir des revendications pour l'ID de véhicule et l'ID de tâche inclus, au lieu de vous appuyer sur ServiceType
.
ServiceType
a été supprimé deAuthTokenContext
.getServiceType()
a été supprimé deAuthTokenContext
.setServiceType
a été supprimé deAuthTokenContext.Builder
.
18 octobre 2021 : arrêt de la prise en charge des niveaux d'API 23, 24 et 25
Lire l'annonce du 18 octobre
En raison de modifications apportées à nos dépendances internes, les niveaux d'API Android 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 les versions Android publiées à partir du troisième trimestre 2022 ne seront compatibles qu'avec les appareils exécutant au minimum le niveau d'API Android 26.
Les versions d'application compilées avec la version 4.x ou antérieure des SDK Navigation et Driver pour Android continueront de fonctionner sur les appareils exécutant le niveau d'API 25 d'Android et les versions antérieures.
v3.0.4 (28 juillet 2021)
Fonctionnalités
Avec cette version, le Driver SDK est officiellement séparé du Navigation SDK. Pour en savoir plus, consultez le guide de migration.
Nouveautés concernant l'API
Ajout des méthodes suivantes :
`RidesharingDriverApi.getDriverSdkVersion()`Stabilité et correction de bugs
Signaler les erreurs PERMISSION_DENIED
au lieu de les classer comme des erreurs de connexion.
Annonce de l'arrêt (21 juin 2021)
Cette annonce décrit les obsolescences du Driver SDK pour Android et du Navigation SDK pour Android à la date indiquée ci-dessus. Cette annonce a également été envoyée aux clients concernés sous la forme d'une annonce obligatoire sur le service (MSA).
Les SDK Nav/Driver pour Android deviendront les SDK Navigation pour Android v3.x et Driver pour Android v3.x pour Android (binaires séparés).
Pour simplifier l'intégration des clients et accélérer notre capacité à fournir des fonctionnalités utiles, nous divisons le SDK Navigation pour Android et le SDK Driver pour Android en deux binaires différents :
- SDK Navigation pour Android, qui fournira des fonctionnalités de navigation et de planification d'itinéraire à vos conducteurs.
- Le Driver SDK pour Android, qui vous permettra d'exploiter les services Web avec état Fleet Engine pour la progression et l'attribution des trajets ou des tâches.
Veuillez noter que le Driver SDK pour Android dépend du Navigation SDK pour Android pour les fonctions de routage de base.
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 seul.
- Définitions de package plus claires pour les classes du Driver SDK pour Android.
- Le SDK Navigation pour Android inclut le SDK Maps pour Android dans le package (à partir du SDK Navigation pour Android v2).
- Cela permet aux fonctionnalités de carte et de navigation de coexister sur la même carte (par exemple, en dessinant des polylignes sur une NavigationView) et réduit l'utilisation de la mémoire, car une seule carte est utilisée au lieu de deux.
- Le SDK Navigation pour Android 3.0 ne dispose pas de toutes les fonctionnalités du SDK Navigation pour Android, mais la version 3.2 résoudra la plupart des problèmes. Pour en savoir plus, consultez Que puis-je faire et quand ?.
- La journalisation nous permettra de résoudre plus facilement les problèmes que vous pourriez rencontrer.
Les méthodes suivantes ont également été supprimées dans la version 3, car elles avaient été précédemment marquées comme obsolètes et qu'une autre solution existait 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(*)
- Pour plus de clarté et d'exhaustivité, notez qu'un certain nombre de méthodes ont été supprimées lors de la transition de la version 1 à la version 2. La plupart d'entre elles étaient des consolidations de 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.
Arrêt du SDK Driver pour Android et du SDK Navigation pour Android v1.x
Le SDK v1 Navigation/Driver a été publié en 2018. La version v3 étant sur le point d'être publiée, il est temps d'abandonner la version v1 pour éviter de devoir gérer plusieurs versions majeures, ce qui n'est pas viable.
Le temps gagné en n'ayant pas à prendre en charge cette version supplémentaire nous permettra de mieux prendre en charge la dernière version majeure et de développer davantage de fonctionnalités importantes pour nos clients.
Par conséquent, le SDK Navigation/Driver v1.x est désormais obsolète et ne sera plus maintenu après le 21 juin 2022.
Veuillez prendre le temps de découvrir comment fonctionnent les abandons dans les versions du SDK.
Fin de la compatibilité avec les SDK Navigation et Driver pour Android 21 et 22
Lire l'annonce de la révocation
La prochaine version 4.0 du SDK Navigation pour Android et du SDK Driver pour Android sera compatible avec [Android 6.0 (niveau d'API 23)](https://developer.android.com/studio/releases/platforms#6.0){: .external} au minimum. La version minimale actuellement acceptée est Android 5.0 (niveau d'API 21). Nous prévoyons de lancer la version 4.0 au quatrième trimestre 2021. Ainsi :
- Les versions d'application compilées avec des versions antérieures à la version 4.x continueront de fonctionner sur les appareils Android 21 et 22. Vos applications de chauffeur qui ont intégré nos SDK actuels continueront de fonctionner sur les appareils équipés d'Android 21 ou version ultérieure. C'est la même chose qu'avant.
- Les versions d'application créées avec le Driver SDK pour Android et le Navigation SDK pour Android version 4.x (ciblant le quatrième trimestre 2021, sous réserve de modifications) et ultérieures ne pourront pas être installées sur les appareils exécutant Android 21 et 22. La version 4.x fonctionnera sur Android 6.0 (niveau d'API 23) au minimum. Par conséquent, les versions de votre application créées avec la prochaine version 4.x ne pourront être reçues que par les conducteurs dont les appareils sont équipés d'Android 23 ou version ultérieure. En d'autres termes, cela signifie que les modifications liées à notre SDK et les modifications que vous avez apportées à votre application n'atteindront pas les conducteurs dont les appareils exécutent Android 21 et 22.
Les versions du SDK Navigation pour Android v3 et du SDK Driver pour Android v3 vers lesquelles vous devrez migrer sont indiquées dans le tableau ci-dessous, ainsi que leur date de disponibilité.
Quelles fonctionnalités de la plate-forme Driver utilisez-vous ? | Utilisez-vous ces fonctionnalités ? | Voici les premières versions disponibles vers lesquelles vous devez effectuer la mise à niveau : | 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 Navigation v3.0 et SDK Driver v3.0 | Guide de migration du pilote v3.0 disponible lors de la publication | |
Oui | NavSDK v3.x et DriverSDK v3.0 |
Pour continuer à utiliser les méthodes supprimées, vous pouvez rester sur 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 v1.x sera publiée au quatrième trimestre 2021 (la version 1 sera donc "figée" à partir de cette date).
* Cette dernière version pourra être corrigée pendant six mois, jusqu'au 21 juin 2022. Après cette date, nous ne pourrons plus répondre aux demandes de correction de bugs ou de fonctionnalités pour la version 1.x.
Veuillez prendre le temps de consulter le tableau ci-dessous et le [guide de migration](/maps/documentation/navigation-sdk-android/v2/migration) pour vous aider à gérer ces changements.
Que puis-je faire et d'ici quand ?
Si vous utilisez actuellement… | Utilisez-vous ces fonctionnalités ? | Pour passer à une édition supérieure maintenant | Passer à un forfait supérieur en septembre 2021 | Liens de migration |
---|---|---|---|---|
v1.x (sans utiliser FleetEngine.java / la fonctionnalité Driver) |
Non | NavSDK v3.0 | Guide | |
Oui | Aucune option disponible | NavSDK 3.x | ||
v1.x (avec FleetEngine.java / fonctionnalité Driver) |
Non | Aucune option disponible | NavSDK 3.x + DriverSDK 3.x |
Le guide ci-dessus, ainsi que le guide de migration du pilote v3.0 disponible lors de la publication. |
Oui |
Nous vous recommandons d'informer vos conducteurs dont les appareils sont équipés d'Android 21 et 22 de passer à une version plus récente d'Android (Android 6.0 minimum) avant d'intégrer le Driver SDK pour Android et le Navigation SDK pour Android version 4.x ou ultérieure dans votre application pour les conducteurs.
v1.15.3 (9 octobre 2020)
Nouveautés concernant l'API
- Le SDK Driver s'abonne désormais au SDK Navigation pour recevoir les informations sur le trafic, qui sont envoyées à l'API Fleet Engine.
Stabilité et correction de bugs
- Correction d'un plantage de l'environnement d'exécution gRPC.
v1.15.2
Fonctionnalités
Ajout de la possibilité d'arrêter les notifications persistantes. Si le signalement de la position est arrêté dans l'instance Fleet Engine, les conseils sont arrêtés dans Navigator
, tous les écouteurs de navigation sont désenregistrés et NavigationFragment
ou NavigationView
sont mis en pause.
Stabilité et correction de bugs
- Correction d'un bug qui entraînait la génération d'une exception si l'instance Fleet Engine était effacée.
v1.15.1 (12 mai 2020)
Fonctionnalités
L'analyse préliminaire des données de la version 1.15.0 a indiqué des améliorations significatives dans le signalement de la position stable (réduction des positions "bloquées"). Ce correctif permet de continuer à utiliser le signal de localisation amélioré. Le problème d'ANR n'était pas lié à ces améliorations.
Stabilité et correction de bugs
- Correction d'un bug qui affichait parfois une ligne droite au début de l'itinéraire dans l'application destinée aux consommateurs.
- Correction d'un bug qui pouvait entraîner un ANR lorsque les positions étaient signalées par le SDK. Cela est dû aux améliorations apportées à
onArrival()
, qui étaient susceptibles de provoquer des conflits de verrouillage. Nous avons pu reproduire les ANR de manière fiable dans certaines circonstances et nous avons pu vérifier que les correctifs résolvaient le problème. L'application de test modifiée pour produire les ANR a fonctionné pendant huit heures sans ANR après la correction.
v1.15.0 (23 mars 2019)
Fonctionnalités
- Ajout de l'état des conseils de navigation pour les événements de démarrage, hors route et d'arrivée afin d'améliorer le suivi de la position du véhicule.
- Ajout de la possibilité de continuer à obtenir des positions ajustées à la route indépendamment de l'état de navigation.
- Ajout d'informations supplémentaires sur les lieux pré-alignés sur la route, comme la précision.
Stabilité et correction de bugs
- La valeur minSdkVersion pour navsdk est passée à 19.
- Correction d'un bug qui empêchait la prise en compte des noms de points de cheminement de latitude/longitude en cas d'échec du geocoding inversé côté serveur.
Version 1.14.2 (2 février 2019)
Fonctionnalités
- Empêche le DriverSDK d'envoyer des positions 0,0 à Fleet Engine (meilleure expérience de partage de trajet et meilleurs inputs de position d'attribution).
- Journalisation supplémentaire pour améliorer les problèmes de position bloquée et réduire les solutions de secours pour le partage de trajet.
- Ignorez 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. - Fiabilité de la localisation améliorée pour l'API 29.
v1.13.0
Stabilité et correction de bugs
- Ajoute une dépendance sur okhttp que les clients devront ajouter à leurs builds Gradle.
v1.11.7 (18 octobre 2019)
Stabilité et correction de bugs
- Les mises à jour de la position continuent désormais après le déclenchement de
onArrival()
pour une destination donnée. - La notification par défaut (une chaîne constante en mode Navigation sans frais) correspond au jeu de couleurs défini pour les notifications de navigation. Pour en savoir plus, consultez Notifications persistantes partagées.
- Correction d'un problème où un événement de mise à jour de la position retardé pouvait entraîner une mise à jour de la position erronée, provoquant des artefacts tels qu'une ligne droite au début d'un itinéraire.
v1.11.6 (4 octobre 2019)
Nouveautés concernant l'API
- Nous avons apporté une série de modifications pour nous assurer que le Driver SDK reprenne rapidement les mises à jour de la position après une panne de réseau. Une fois la connexion réseau rétablie, les mises à jour de la position reprennent lors de la prochaine mise à jour de la position planifiée.
Stabilité et correction de bugs
setVehicleState()
renvoie désormais immédiatement un résultat. La mise à jour de Fleet Engine s'effectue désormais sur un thread en arrière-plan. Résolution d'un problème ANR (Application Not Responding).- Correction d'un problème qui entraînait l'affichage des itinéraires de partage de trajet sous forme de ligne droite avec les anciennes versions du SDK Consumer. Garantit qu'aucun point de repère ponctuel n'est ajouté à l'itinéraire par le Driver SDK.