Google Maps API 除了提供能被 Ajax 应用程序调用的 JavaScript 接口之外,还提供了能被 Flash 应用程序调用的 Flex 语言接口。本文就将介绍如何用 Google Maps API for Flash 来开发基于 Flash 的地图应用程序。
Flex 简介
Flex 是 Abode 公司贡献的一个开源框架,用于快速构建和维护高度交互并具有丰富表现力的互联网应用( Rich Internet Application )。这些 RIA 应用程序既可以通过 Adobe Flash Player 部署在所有主流的浏览器上,也可以通过 AIR(Adobe Integrated Runtime) 部署在所有主流操作系统的桌面上。
一个 Flex 应用程序通常有 ActionScript 和 MXML 两种代码组成。ActionScript 是一种面向对象的脚本语言,符合 ECMAScript 标准,用于实现 Flex 应用程序的逻辑;MXML 是一种类似于 HTML 和 XML 的标记语言,用于构建 Flex 应用程序的用户界面。Flex 应用程序最终需要被编译成 SWF 文件以运行在 Adobe Flash Player 或 AIR 上。
本文并不详细讲述 MXML 和 ActionScript 的语法,如想了解这两种语言的用法,可以查看 参考资源 中的相关教程。
 
Google Maps API for Flash 简介
Google Maps API for Flash 使得 Flex 开发人员能够把 Google Map 嵌入到 Flex 应用程序中。该 API 提供了很多实用的工具用来操控 Google Map。利用该 API,您可以处理地图事件、添加地图控件、在地图上添加标记、或者在地图上面画线,也可以利用 Geocoding 将地址转换成经纬度数据。笔者写作期间 Google Maps API for Flash 还不支持 AIR 环境,只能在 Flash Player 里运行。
 
搭建开发环境
开发 Flex应用程序,您需要安装 Flex SDK或者Flex Builder。前者是开源软件,没有提供 IDE 界面,您需要使用命令行来编译MXML 和 AcitionScript代码;后者是基于 Eclipse 的一个 Flex IDE,提供了诸如代码提示、自动完成、Flex 应用程序调试等很多方便的功能。本文将以 Flex Builder 为例,介绍如何搭建 Flex 开发环境以开发 Google 地图应用程序。
申请 Google Maps API key
首先您需要到 Google 站点 上申请一个免费的 Google Maps API key。它会提示您输入“ My web site URL”,为了本机测试,我们输入本机地址“http://127.0.0.1”,然后点击确认按钮之后就会看到申请的 key 了。注意如果希望您的地图应用程序能在您自己的网站上运行,需要填写真正的网站域名。
下载 Google Maps API for Flash SDK
Google 站点 下载 Google Maps API for Flash SDK 到本地硬盘并解压。解压后在 lib 目录下会有两个 swc 文件,这些 swc 文件包含开发 Google Maps API for Flash 应用程序要用到的所有 ActionScript 类。在用 Flex 开发 Google 地图应用程序时,必须把后缀为 _flex 的 swc 文件加到项目的 Library path 中。
配置 Flex 工程的 Library path
假定您已经有了 Flex Builder(可以从 Adobe 网站 下载 Flex Builder 试用版)。打开 Flex Builder,创建一个新的 Flex 工程。由于目前 Google Maps API for Flash 还不支持 AIR,所以应用类型选择为 Web Application。创建完 Flex 工程后,右键点击这个工程,在弹出菜单中选择 Properties。在 Properties 窗口中选择 Flex Build Path,再选择 Library path, 在此点击 Add SWC 按钮选择前面解压后得到的 map_flex_*.swc 文件即可。
到此,环境就准备好了,接下来就可以动手用 Flex Builder 开发 Google 地图应用程序了。