注册谷歌地图 API 密钥
cheungmine
接着昨天的话题,今天首先演示如何生成谷歌Android认证指纹,这个指纹用来注册谷歌地图API密钥。有了这个密钥,我们就可以开发基于google map api的android应用了。比如在你自己的程序里嵌入google map。这里不讨论任何法律上的许可问题。假定为了学习的用途,你是可以开发这样的应用来玩玩的。
确保Java环境正确安装和配置,确保Eclipse和Android SDK正确安装和配置。然后在命令行模式输入下面的命令,确保在一行中输入:
keytool.exe -list -alias androiddebugkey -keystore "C:/Documents and Settings/Administrator/.android/debug.keystore" -storepass android -keypass android
结果显示如下:
记下图中红色框的文字。这个就是你的指纹。确保你有一个gmail账户,打开
http://code.google.com/intl/zh-CN/android/maps-api-signup.html
填入你的认证指纹即可获得apiKey了,结果显示如下:
上面这段xml尤其有用,在下面的例子中我将演示如何使用它。
1)打开Eclipse,Window菜单下面选择Android SDK和AVD Manager,选中一个虚拟机(Virtual Devices),如HTC-G7,按Start,在Screen Size (in) 里填入5,Launch,下面就是我们虚拟G7打开的样子:
2)下面开始我们的google map之旅。我不敢保证一次成功。因为我是边写这篇文章一边实验程序的,因此在我写作的时候,完全不能预测接下来要发生什么。好了,废话少说,Eclipse->File->New->Project->Android Project:
按Finish,就结束了创建工程。
3)当我测试上面的工程时,总是告诉我AVD设备没找到,尽管我的HTC-G7虚拟机已经打开了。于是我关掉HTC-G7,然后运行上面的工程项目,仍然是告诉我AVD没找到。我突然想起来,昨天我创建的AVD是基于标准的Android2.2的。而今天我要用的是google map API,我需要重新创建一个AVD以支持google map API。于是我又打开AVD设备管理器。按照下面的格式创建了我的第2个AVD---GMap:
4)这时候我的第2个AVD,也就是支持google map的AVD被正确创建出来了。我知道还需要对MapsDemo做点配置上的修改,就是找到
android:apiKey,把我刚才创建的地图密钥添进去。其实这句话是在mapview.xml中的。如果你不知道也没关系,搜索全部文件,查找出现android:apiKey的地方,把文章开始时生成的密钥添进去,如下图:
另外,所以需要创建MapView的地方都需要填入这个key,继续搜索new MapView,发现
mMapView = new MapView(this, "MapViewCompassDemo_DummyAPIKey");
用我们刚才的key替换,结果如下:
mMapView = new MapView(this, "05ox3o9mAk1mN-jVWtdV................");
5)编译运行,就看到下面的结果,这里有2个程序,你可以选择任何一个看看结果大同小异:
好了,今天就写到这里。一切还不错。虽然还未牵扯到写一行真正的Java代码。但我的小例子终于有结果了,接下来文章就要进入正题了,也会越来越加深难度。写今天的文章的时候,我还google出下面的文章。但是对于我这个Android2.2好像不太适合。
http://westyi.javaeye.com/blog/714945
我还未真正写过Java代码,所以今天就只能到这里了,多一句我都说不出来了。希望大家指正。