# Codename One Updates Google Maps Integration with Improved Widget Layering and Simulator Behavior

DevFeed: [Codename One Updates Google Maps Integration with Improved Widget Layering and Simulator Behavior](<https://devfeed.tech/articles/new-improved-native-google-maps-19402.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/new-improved-native-google-maps/>)

Author: Steve Hannah

Published: 2017-03-13T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Google Maps](<https://devfeed.tech/topics/google-maps.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [ui](<https://devfeed.tech/topics/ui.md>), [API](<https://devfeed.tech/topics/api.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Library](<https://devfeed.tech/topics/library.md>)

Tags: [announce](<https://devfeed.tech/tags/announce.md>), [apis](<https://devfeed.tech/tags/apis.md>), [code](<https://devfeed.tech/tags/code.md>), [google-maps](<https://devfeed.tech/tags/google-maps.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [library](<https://devfeed.tech/tags/library.md>), [maps](<https://devfeed.tech/tags/maps.md>), [native](<https://devfeed.tech/tags/native.md>), [ui](<https://devfeed.tech/tags/ui.md>), [update](<https://devfeed.tech/tags/update.md>)

## AI overview

Codename One released an update to its Google Maps library that allows Codename One widgets to appear over native maps and makes the simulator behave more like actual devices. The simulator now uses an internal BrowserComponent with the Google Maps Javascript API, while configuration requires separate keys for Android, iOS, and JavaScript.

## Source excerpt

One of the primary use-cases that benefits from our recent improvements for native peer integration, is "map apps". That is, apps that use native maps in some shape or form. This is an extremely common use case for mobile apps these days. Codename One has supported native maps for quite some time, but (up until recently), they were limited by a couple of factors: Native Widgets Were Always In Front - Since Google Maps were "native" widgets Codename One couldn't paint over top of the map. Native widgets were always placed in front of the Codename One UI. We could place markers on the map, and draw paths using MapContainer APIs (which were backed by native code on each platform), but we couldn't, for example, place a Button over top of the map. The Simulator Still Used the Old MapComponent - The simulator didn't have support for native maps. It would just use the light-weight Codename One MapComponent, which uses tiles (rather than vector graphics like the native maps), and didn't behave the same as native maps in some cases. E.g. you could draw over top of the MapComponent, which would cause a bit of a surprise if you were counting on that, only to find out after building for iOS that your beautiful buttons were rendered behind the map. I am happy to announce that on Friday we released an update for the Google maps library that resolves both of these issues.