diff --git a/MIGRATION.md b/MIGRATION.md index 9fa8aa337..7ac44d738 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -26,6 +26,16 @@ android-maps-utils = { group = "com.google.maps.android", name = "android-maps-u ``` This aggregator dynamically and transitively pulls all individual submodules. Alternatively, you can choose to import only the specific submodules your app requires (e.g., `android-maps-utils-core` and `android-maps-utils-clustering`). +> [!IMPORTANT] +> **Google Navigation SDK Compatibility**: If your project integrates the Google Navigation SDK for Android, add an exclusion for `play-services-maps` to prevent duplicate class conflicts: +> ```kotlin +> configurations.all { +> if (name.contains("navigation", ignoreCase = true)) { +> exclude(group = "com.google.android.gms", module = "play-services-maps") +> } +> } +> ``` + --- ## 2. Kotlin Property Syntax Overrides (Breaking Changes for Kotlin Callers) diff --git a/README.md b/README.md index 191de5bbe..6869e3816 100644 --- a/README.md +++ b/README.md @@ -71,6 +71,18 @@ dependencies { } ``` +### Compatibility with Google Navigation SDK for Android + +If your project integrates the [Google Navigation SDK for Android](https://developers.google.com/maps/documentation/navigation/android-sdk), you must exclude the transitive `play-services-maps` dependency to prevent duplicate class conflicts: + +```kotlin +configurations.all { + if (name.contains("navigation", ignoreCase = true)) { + exclude(group = "com.google.android.gms", module = "play-services-maps") + } +} +``` + ## Sample App