1515This open-source library contains utilities that are useful for a wide
1616range of applications using the [ Google Maps SDK for Android] [ maps-sdk ] .
1717
18+ As of version 5.0.0, the library has been rewritten in Kotlin and split into
19+ focused submodules so you can depend only on what you need. If you are
20+ upgrading from 4.x, see the [ migration guide] ( MIGRATION.md ) .
21+
1822- ** Marker animation** - animates a marker from one position to another
1923- ** Marker clustering** — handles the display of a large number of points
2024- ** Marker icons** — display text on your Markers
@@ -33,23 +37,37 @@ You can also find Kotlin extensions for this library in [Maps Android KTX][andro
3337
3438## Requirements
3539
36- * Android API level 21 +
40+ * Android API level 23 +
3741* [ Sign up with Google Maps Platform]
3842* A Google Maps Platform [ project] with the ** Maps SDK for Android** enabled
3943- An [ API key] associated with the project above ... follow the [ API key instructions] if you're new to the process
4044
4145## Installation
4246
43- ``` groovy
47+ ``` kotlin
4448dependencies {
4549 // Utilities for Maps SDK for Android (requires Google Play Services)
4650 // You do not need to add a separate dependency for the Maps SDK for Android
4751 // since this library builds in the compatible version of the Maps SDK.
48- implementation 'com.google.maps.android:android-maps-utils:3.20.1'
52+ // The aggregator artifact transitively pulls in all submodules below.
53+ implementation(" com.google.maps.android:android-maps-utils:5.0.0" ) // x-release-please-version
54+ }
55+ ```
4956
50- // Optionally add the Kotlin Extensions (KTX) for full Kotlin language support
51- // See latest version at https://github.com/googlemaps/android-maps-ktx
52- // implementation 'com.google.maps.android:maps-utils-ktx:<latest-version>'
57+ Alternatively, depend only on the submodules your app needs:
58+
59+ ``` kotlin
60+ dependencies {
61+ // Base utilities: PolyUtil, SphericalUtil, collection managers, Street View metadata
62+ implementation(" com.google.maps.android:android-maps-utils-core:5.0.0" ) // x-release-please-version
63+ // Marker clustering
64+ implementation(" com.google.maps.android:android-maps-utils-clustering:5.0.0" ) // x-release-please-version
65+ // KML and GeoJSON import
66+ implementation(" com.google.maps.android:android-maps-utils-data:5.0.0" ) // x-release-please-version
67+ // Heatmaps
68+ implementation(" com.google.maps.android:android-maps-utils-heatmaps:5.0.0" ) // x-release-please-version
69+ // Marker icons and animation
70+ implementation(" com.google.maps.android:android-maps-utils-ui:5.0.0" ) // x-release-please-version
5371}
5472```
5573
@@ -110,20 +128,20 @@ Full guides for using the utilities are published in
110128
111129# ## Marker utilities
112130
113- - Marker animation [source](https://github.com/googlemaps/android-maps-utils/blob/main/library /src/main/java/com/google/maps/android/ui/AnimationUtil.java ), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/AnimationUtilDemoActivity.java)
114- - Marker clustering [source](https://github.com/googlemaps/android-maps-utils/tree/main/library /src/main/java/com/google/maps/android/clustering), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/marker-clustering)
115- - Advanced Markers clustering [source](https://github.com/googlemaps/android-maps-utils/tree/main/library /src/main/java/com/google/maps/android/clustering), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/CustomAdvancedMarkerClusteringDemoActivity.java)
116- - Marker icons [source](https://github.com/googlemaps/android-maps-utils/blob/main/library /src/main/java/com/google/maps/android/ui/IconGenerator.java ), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/IconGeneratorDemoActivity.java)
131+ - Marker animation [source](https://github.com/googlemaps/android-maps-utils/blob/main/ui /src/main/java/com/google/maps/android/ui/AnimationUtil.kt ), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/AnimationUtilDemoActivity.java)
132+ - Marker clustering [source](https://github.com/googlemaps/android-maps-utils/tree/main/clustering /src/main/java/com/google/maps/android/clustering), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/marker-clustering)
133+ - Advanced Markers clustering [source](https://github.com/googlemaps/android-maps-utils/tree/main/clustering /src/main/java/com/google/maps/android/clustering), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/CustomAdvancedMarkerClusteringDemoActivity.java)
134+ - Marker icons [source](https://github.com/googlemaps/android-maps-utils/blob/main/ui /src/main/java/com/google/maps/android/ui/IconGenerator.kt ), [sample code](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/IconGeneratorDemoActivity.java)
117135</details>
118136
119137<details>
120138 <summary>Data visualization utilities</summary>
121139
122140# ## Data visualization utilities
123141
124- - Display heat maps [source](https://github.com/googlemaps/android-maps-utils/tree/main/library /src/main/java/com/google/maps/android/heatmaps), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/heatmap)
125- - Import GeoJSON [source](https://github.com/googlemaps/android-maps-utils/tree/main/library /src/main/java/com/google/maps/android/data/geojson), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/geojson)
126- - Import KML [source](https://github.com/googlemaps/android-maps-utils/tree/main/library /src/main/java/com/google/maps/android/data/kml), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/kml)
142+ - Display heat maps [source](https://github.com/googlemaps/android-maps-utils/tree/main/heatmaps /src/main/java/com/google/maps/android/heatmaps), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/heatmap)
143+ - Import GeoJSON [source](https://github.com/googlemaps/android-maps-utils/tree/main/data /src/main/java/com/google/maps/android/data/geojson), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/geojson)
144+ - Import KML [source](https://github.com/googlemaps/android-maps-utils/tree/main/data /src/main/java/com/google/maps/android/data/kml), [guide](https://developers.google.com/maps/documentation/android-sdk/utility/kml)
127145
128146</details>
129147
@@ -132,8 +150,8 @@ Full guides for using the utilities are published in
132150
133151# ## Additional utilities
134152
135- - Polyline encoding and decoding [source](https://github.com/googlemaps/android-maps-utils/blob/main/library/src/main/java/com/google/maps/android/PolyUtil.java ), [encoding sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/PolySimplifyDemoActivity.java), [decoding sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/PolyDecodeDemoActivity.java)
136- - Spherical geometry [source](https://github.com/googlemaps/android-maps-utils/blob/main/library/src/main/java/com/google/maps/android/SphericalUtil.java ), [compute distance sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/DistanceDemoActivity.java)
153+ - Polyline encoding and decoding [source](https://github.com/googlemaps/android-maps-utils/blob/main/library/src/main/java/com/google/maps/android/PolyUtil.kt ), [encoding sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/PolySimplifyDemoActivity.java), [decoding sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/PolyDecodeDemoActivity.java)
154+ - Spherical geometry [source](https://github.com/googlemaps/android-maps-utils/blob/main/library/src/main/java/com/google/maps/android/SphericalUtil.kt ), [compute distance sample](https://github.com/googlemaps/android-maps-utils/blob/main/demo/src/main/java/com/google/maps/android/utils/demo/DistanceDemoActivity.java)
137155
138156</details>
139157
0 commit comments