2012-09-06 163 views
0

有没有办法找出我是否生成了正确的API密钥?android Google Map API密钥

来自同一个debug.keystore我已经设法让Facebook HASH Key没有问题,但由于某些原因生成MD5指纹并从Google生成API密钥后,我的地图仍然是空白的..这意味着我只能看到它的网格没有地图..

我的互联网连接是打开的,我没有在我的LogCat错误..是否有某种调试我可以做,以检查我的API密钥是否正确或不?

XML:

<?xml version="1.0" encoding="utf-8"?> 
<com.google.android.maps.MapView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/map" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:clickable="true" 
    android:apiKey="my_generated_key"/> 

UPDATE: 运行一个新的测试应用程序时,它的伟大工程与我的API密钥。 当我试图嵌入我的应用程序内的地图(在标签主机内)我只得到网格视图。

+0

检查您的权限可能吗?需要Internet许可才能使地图正常工作。 – Paul

+0

互联网已打开并且已获得许可 –

+0

您是否确定自己获得了MD5总数而不是SHA-1?只要检查 – jnthnjns

回答

1

你应该在你的XML中添加这样的:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent"> 

    <com.google.android.maps.MapView 
      android:id="@+id/mapView" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:enabled="true" 
       android:clickable="true" 
       android:apiKey="api key" /> 

</RelativeLayout> 

,如果你没有一个布局,你是不是能够看到地图。

+0

但是我看到地图布局。但没有地图加载..如何谷歌“你好地图”使用地图作为根布局? –

+0

在“Hello Maps”中写入了您打开layout/main.xml(每个已经有布局)并添加一个MAPVIEW(意味着您不能有多个mapview)作为根NODE(A节点可以是元素节点,属性节点,文本节点...)。节点是,它必须站在布局。在“你好地图”中,无处不写,你应该使用这个笔记作为布局,只需将其添加到您的布局。 – pandabear

+0

我明白它说的有点不同,但我会试一试并在此更新 –

0

确保你已经设置了INTERNET权限,并且你的密钥真的是MD5。较新版本的keytool返回SHA1密钥而不是MD5。获取MD5 add -v至keytool选项

0

如果您的项目中有灰色背景,请确保您的Manifest中有应用程序标记前的权限INTERNET。 如果您在设备上显示灰色背景,请确保已根据您创建的application.keystore为应用程序创建了一个新的带有新MD5的Api密钥,这是您在导出应用程序时创建的。

如果你还没有做到这一点,看到这个链接更好的解释:One Google Maps key for all developers?

如果您的logcat是很好,你甚至没有红色的“无法获取连接工厂客户端”地图键很好。 :)但即使你在LogCat中出现这个错误,这并不意味着什么,因为它可能代表Eclipse中的一些错误,并且无论如何,模拟器和实际设备上的地图仍然可以工作。