googlemaps / googlemaps/android-maps-compose
java.lang.IllegalArgumentException: Unmanaged descriptor
- Dominant language
- Kotlin
- Stars
- 1.3k
- Forks
- 181
- Avg merge
- 2d 23h
- Merged PRs (30d)
- 18
Description
[This bug](https://github.com/googlemaps/android-maps-compose/issues/332) wasn't solved.
Got it today. Just use a lot of markers in clustering - wait for them to start show on the map and then switch screens (navigate) before all of them became rendered.
```
java.lang.IllegalArgumentException: Unmanaged descriptor
at com.google.maps.api.android.lib6.common.m.b(:com.google.android.gms.dynamite_mapsdynamite@233414047@23.34.14 (190800-0):10)
at com.google.maps.api.android.lib6.impl.w.c(:com.google.android.gms.dynamite_mapsdynamite@233414047@23.34.14 (190800-0):18)
at com.google.maps.api.android.lib6.impl.cw.u(:com.google.android.gms.dynamite_mapsdynamite@233414047@23.34.14 (190800-0):11)
at com.google.android.gms.maps.model.internal.p.bb(:com.google.android.gms.dynamite_mapsdynamite@233414047@23.34.14 (190800-0):347)
at m.fi.onTransact(:com.google.android.gms.dynamite_mapsdynamite@233414047@23.34.14 (190800-0):21)
at android.os.Binder.transact(Binder.java:1164)
at com.google.android.gms.internal.maps.zza.zzc(com.google.android.gms:play-services-maps@@18.1.0:2)
at com.google.android.gms.internal.maps.zzy.zzs(com.google.android.gms:play-services-maps@@18.1.0:3)
at com.google.android.gms.maps.model.Marker.setIcon(com.google.android.gms:play-services-maps@@18.1.0:2)
at com.google.maps.android.clustering.view.DefaultClusterRenderer.onClusterUpdated(DefaultClusterRenderer.java:937)
at com.google.maps.android.clustering.view.DefaultClusterRenderer$CreateMarkerTask.perform(DefaultClusterRenderer.java:1053)
at com.google.maps.android.clustering.view.DefaultClusterRenderer$CreateMarkerTask.access$2300(DefaultClusterRenderer.java:992)
at com.google.maps.android.clustering.view.DefaultClusterRenderer$MarkerModifier.performNextTask(DefaultClusterRenderer.java:707)
at com.google.maps.android.clustering.view.DefaultClusterRenderer$MarkerModifier.handleMessage(DefaultClusterRenderer.java:678)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loopOnce(Looper.java:201)
at android.os.Looper.loop(Looper.java:288)
at android.app.ActivityThread.main(ActivityThread.java:7872)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)
```
Code:
```
val events by viewModel.eventsLocalDto.filtered.collectAsStateWithLifecycle()
val selectedEvent by viewModel.selectedEvent.collectAsStateWithLifecycle()
Clustering(
items = events,
onClusterItemClick = {
Timber.v("Marker clicked: ${it.name}")
viewModel.selectEvent(it)
true
},
)
if (selectedEvent is EventItem) (selectedEvent as EventItem).latLng.let {
val selectedMarker = BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_AZURE)
Marker(state = MarkerState(it), zIndex = 0.5f, icon = selectedMarker)
}
```
`selectedEvent` wasn't even used here. So, all markers had default view and their count was: 32632.
Contributor guide
Assessment
This issue has not been assessed yet.