1

我查看了与此相关的所有 stackoverflow 问题,但没有任何效果。对不起,如果这已经被问到了。

我将 Google 地图 api 集成到我的应用程序中,并且在开发中一切正常。我得到了一个基于 debug.keystore 文件的调试 api 密钥,它工作得很好。

然后我继续并根据我用来签署应用程序的密钥库文件获得了一个发布 api 密钥。但是,我看到的只是灰色瓷砖 - 地图没有显示。我在清单中的应用程序标记内有使用库标记。我在清单中拥有互联网许可,以及android:debuggable="false"(尽管这似乎没有改变任何东西)。

我还能错过什么?

4

3 回答 3

0

您应该从另一个链接创建一个 Release 密钥。Debug 键和 Release 键是不同的。请参阅此处了解“如何以不同方式创建调试密钥和发布密钥”:http ://chocotech.blogspot.com/2012/10/get-debug-key-and-release-key-for.html

于 2013-12-13T11:57:47.680 回答
0

我有同样的问题。

我是如何解决的:

为您的发布密钥库创建一个新的(!)API 密钥很重要,因为为调试密钥库生成的旧 API 密钥不适用于发布密钥库。这是如何执行此操作的过程: https ://developers.google.com/maps/documentation/android/mapkey#getfingerprint

简而言之:

  1. 为您的密钥库制作指纹(MD5),例如通过此批处理文件:

    @echo off "c:\Program Files\Java\jdk1.7.0\bin\keytool.exe" -v -list -keystore my-release-key.keystore > my-release-md5-fingerprint.txt

    回显您保存到文件 my-release-md5-fingerprint.txt 的 google api 密钥 (md5)

    暂停

  2. 转到生成 APi 的 google 站点: http ://code.google.com/android/maps-api-signup.html

并将您的 MD5 指纹复制粘贴到适当的字段,如下所示 94:1E:43:49:87:73:BB:E6:A6:88:D7:20:F1:8E:B5:98 (没有额外的允许空格或附加符号)。

于 2012-10-10T19:35:46.560 回答
-1

In your MapView you have to specify your ApiKey :

<com.google.android.maps.MapView
    android:id="@+id/mapView"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:apiKey="@string/mapKey"
    android:layout_below="@+id/email"
    android:clickable="true"
    android:enabled="true" >
</com.google.android.maps.MapView>

where mapKey is you ApiKey (here I define it in my Strings).

于 2012-05-22T00:15:11.357 回答