Aktualizuję istniejącą aplikację na Androida, aby korzystać z nowego interfejsu Google Maps Android API v2. Mam około 2500 znaczników, które chcę dodać do mapy. Ze starszą wersją API odkryłem, że zdolność reagowania map jest przerażająca, gdy są 2500 znaczników, więc musiałem obejść to, dodając tylko znaczniki znajdujące się w bieżącym widocznym obszarze mapy.Google Maps Android API v2 bardzo powolny przy dodawaniu wielu znaczników
Miałem nadzieję, że 2500 markerów będzie szybsze z nowym interfejsem API, ale nadal jest okropne, nawet na Nexusie 4, i nie widzę opcji klastrowania.
Moje pytanie: jak ustalić, czy określony punkt lat/lng znajduje się w widocznym obszarze mapy?
W dokumentacji znalazłem VisibleRegion, ale do tej pory nie miałem z tym szczęścia. Każda pomoc jest bardzo doceniana.
* Nota boczna: 2500 znaczników na iOS MKMapView (mapy google lub mapy Apple) jest bardzo gładka i reaguje nawet na iPhone 3gs. Wciąż nie mogę zrozumieć, dlaczego jest tak powolny na Androida, nawet z najnowszym i najlepszym sprzętem.
dziękuję za doskonałą blogpost – subash
Byłoby zresztą odwrócić to, aby być w stanie wskazać czy na mapie są znaczniki, ale poza bieżącym ekranem/widokiem/ograniczeniami? –
zintegrowany z wieloma menedżerami klastra działa jak urok. w porównaniu ze wszystkimi umieszczonymi markerami, to rozwiązanie spowoduje, że klastry będą przerysowywać/ponownie obliczać nieco, ale jest to całkiem w porządku, biorąc pod uwagę ogromny wzrost wydajności. dziękuję @DiscDev – DayDayHappy