We are in the process of creating an Android app (targeting API 19 and above) using C# and the Xamarin framework. One of the key features is a map embedded within a WebViewClient - specifically, we are utilizing Here Maps rendered through the Here Maps JS API v3 (not the Here Maps mobile Android SDK).
The current issue at hand is that map.getZoom() returns 0 after a user performs a pinch-to-zoom action on the map.
In an attempt to troubleshoot this problem, we set up event listeners for 'mapviewchangestart', 'mapviewchange', 'mapviewchangeend', and 'sync'. Within these handlers, we called map.getZoom(), with the exception of 'sync' where we referenced e.newValue.zoom. We also tested calling getZoom() directly without any associated map events. However, in all cases, after a pinch-to-zoom action, the result was consistently 0.
To rule out any asynchronous issues, we tried waiting for approximately 30 seconds for all events and handlers to finish before calling map.getZoom(), yet it still returned 0.
Interestingly, when zooming in by tapping the map controls (+/-) or programmatically setting the zoom level, getZoom() functions correctly and provides the accurate zoom level. A potential clue emerged when we observed that when reaching the maximum zoom level (i.e., 20) through pinching-to-zoom, map.getZoom() did reflect the correct value of 20.
Has anyone encountered a similar issue before? Any insights or suggestions, no matter how small, would be greatly appreciated. Thank you.