您的位置:首页 > 移动开发 > Android开发

Android 开发 谷歌地图之 寻找 keystore 的 MD5

2010-10-27 00:40 369 查看
要使用google map,获得google map的Api密钥,就要知道你程序中keystore的MD5指纹,对于绝大部分Android开发者而言,只要按照书上或者网上的做法,启动cmd,在debug.keystore所在路径下运行 keytool -list -keystore debug.keystore 再输入初始密码 android就行了,但是每个人机器的配置情况不一样,因此像我一般悲剧的开发者,可能会遇到一些问题,现在就来说说我的“悲惨命运”,希望对大家有帮助。

1.keytool 命令不识别——cmd说keytool不是keytool 是jdk的加密工具,因此要cmd识别它,要不你就得在 jdk的bin目录下进行,要不你就得将jdk的bin目录路径加到系统环境变量中,设置环境变量的方法,网上很多,就不再说了。

2.不出现 MD5 指纹—— 很悲剧的,我输入密码之后,只出现了 SHA1 指纹,google可不认SHA1的账。纠结了大半下午,网上是说MD5和SHA1差不多,是都是加密算法,后者更高级些,可google只认MD5指纹,愁坏我也。在网上也找了些MD5破译工具,也没用,百般无奈中,了解了一下keytool工具,发现,其实书上和网上说的那个获得MD5指纹的命令,不完美,完美的命令应该是 keytool -list -v -keystore debug.keystore(或者其他keystore),这样,所有的信息都会给你列出来了,MD5和SHA1都有,所以对于用默认用SHA1加密的机器,应该要把这重要的 -v指令加上。

顺便说一下,我用MD5破译器得到的MD5校验和指纹有点像,尽管google也会根据这个校验给你一个Api密钥,但运行后map上只有灰格子。

由此说来,如果你的程序中的map只有灰格子,又不是地图加载慢的原因,那么你就应该检查一下你的密钥了。

另外debug.keystore文件,一般在系统盘/**/当前用户/.android 下,一般会在android工程一次运行时创建,所以要删除重建的话,建议删除.android 文件夹,然后换个eclipse工作目录重新运行。

一些小总结,如果错误,还勿见笑,多请指正,谢谢!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: