Google Maps API for Flashお試し中
例によってFlexSDK。
ver: map_flex_1_4.swc

いくつか異常に重い処理がある
呼び出し順によってなんでこんなに違うんだ!?なんかよくわからないけど直った。

Flex[23]SDKでやるとUIComponentの中に入れないから、Mapのサイズを手動設定しないといけない(?)んだけどそのタイミングによっては異常に時間がかかる(?)

以下のならok

map = new Map;
map.key = Params.key;
addChild( map );
map.addEventListener(MapEvent.MAP_READY, function(e:MapEvent) :void {
    map.removeEventListener( MapEvent.MAP_READY, arguments.callee );
    map.setSize( new Point(stage.stageWidth,stage.stageHeight) );
    map.setCenter(
        new LatLng(Params.MAP_INITIAL_CENTER_LAT,Params.MAP_INITIAL_CENTER_LNG),
        3,
        MapType.HYBRID_MAP_TYPE);

    map.enableScrollWheelZoom();
    map.enableContinuousZoom();
    map.addControl( new PositionControl() );
    map.addControl( new ZoomControl() );
    map.addControl( new MapTypeControl() );
});
map.addEventListener(MapMoveEvent.MOVE_END, function(e:MapMoveEvent) :void {
    //mapRefreshed();
});
map.addEventListener(MapMouseEvent.CLICK, function(e:MapMouseEvent):void{
    logger("[CLICK]pos: "+e.latLng);
});

keyはこんなふうに設定するのがいいのかなぁ
Paramsクラス

public static function get key() :String {
    var loadedFrom :String = stage.loaderInfo.loaderURL.match(/^(https?:\/\/[^\/]+)/)[1];
    if ( flashvars["key"] ) {
        return flashvars["key"];
    }
    switch ( loadedFrom ) {
        case "http://production.com":
            return "key_for_production";
        case "http://dev.production.com":
            return "key_for_dev";
    }
    return "key_for_localhost";
}