Native Maps is a native extension to display maps with interactivity and overlays. It is supported on iOS and Android, seamlessly integrating native OS maps in your app. It’s possible to enable or disable normal user touch interaction, control map movement and panning and zooming via code.

The extensions also allows traffic overlays, indoor and 3D views, tilt and bearing on Android, markers with info windows,  draggable markers (with touch and drag marker events), custom Polyline and Polygon overlay drawing, user location updates and follow modes on iOS.

Sample

NativeMaps.init( DEV_KEY );

message( "NativeMaps Supported: "+ String(NativeMaps.isSupported) );
message( "NativeMaps Version: " + NativeMaps.service.version );

NativeMaps.service.addEventListener( NativeMapEvent.MAP_CREATED, map_createdHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MAP_MOVE_COMPLETE, map_moveCompleteHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MAP_TOUCHED, map_touchedHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MARKER_DRAG_START, map_markerDragStartHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MARKER_DRAG_END, map_markerDragEndHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MARKER_TOUCHED, map_markerTouchedHandler );
NativeMaps.service.addEventListener( NativeMapEvent.MARKER_INFO_WINDOW_TOUCHED, map_infoWindowTouchedHandler );
NativeMaps.service.addEventListener( NativeMapEvent.USER_LOCATION_ERROR, map_userLocationErrorHandler );
NativeMaps.service.addEventListener( NativeMapEvent.USER_LOCATION_UPDATE, map_userLocationUpdateHandler );

private function map_userLocationUpdateHandler( event:NativeMapEvent ):void {
  trace("User Location Updated at: " + event.position.toString() );
}

private function addMarker() :void {
  var marker2:MapMarker = new MapMarker("test2");
  marker2.title = "Sydney";
  marker2.info = "This is the Sydney marker.";
  marker2.setPosition( new LatLng(-33.8, 151.2) );
  marker2.draggable = false;
  marker2.animatesDrop = true;
  marker2.infoWindowEnabled = false;

  if (Capabilities.version.indexOf("AND") != -1)
    marker2.colour = MapMarkerColour.AND_ROSE;
  else
    marker2.colour = MapMarkerColour.IOS_GREEN;					

  trace("added marker : " + NativeMaps.service.addMarker( marker2 ));
}
Air Native Extension, Android, iOS . URL.