3

我已经检查了很多关于未在 android 设备上加载的地图图块的问题。我无法修复我遇到的相同错误。

  1. 我可以使用调试密钥在我的应用程序中的模拟器和设备上测试我的地图视图。它工作得很好。我已经为我的调试证书生成了一个 maps api 密钥。

  2. 然后我用它的 MD5 为我的发布证书创建了一个 maps api 密钥。我已将其添加到我的地图视图中,现在该应用程序无法正常工作。

    • 我在清单文件的正确位置添加了 android 互联网权限。
    • 我已经正确地生成了 MD5 指纹,就像我为调试密钥所做的那样。
    • 我的应用程序中只有一个地图视图,所以我刚刚更改了布局 xml 中的那个 api 键。
    • 为调试和发布生成密钥的唯一区别是:在发布证书的 keytool 的命令选项中,我只被询问了一次密码,我认为这是存储通行证。从来没有问过我的密钥通行证(实际上它们是相同的)

我像这样生成了调试密钥库 MD5

$ keytool -list -alias androiddebugkey \
-keystore <path_to_debug_keystore>.keystore \
-storepass android -keypass android

我像这样创建了发布密钥 MD5

 $ keytool -list -alias myalias_name -keystore "mykeystorepath"

我还用 android 商店测试了该应用程序仍然没有运气。我错过了什么?非常感谢任何帮助,谢谢大家!

4

2 回答 2

0

使用 eclipse 生成密钥并导出,也不要依赖 DEBUG 变量(Android:自动选择调试/发布 Maps api 密钥?)在运行时切换密钥,因为此时已损坏,您必须导出应用程序,获取md5,获取基于这个新md5的key,切换map key,重新导出

编辑:

https://developers.google.com/maps/documentation/android/mapkey的重要步骤

1) $ keytool -list -alias alias_name -keystore my-release-key.keystore (NOT DEBUG KEY)
2) https://developers.google.com/android/maps-api-signup
3) update code with new key
4) clean project & build (important to clean, eclipse doesn't always do it)
5) export with eclipse
于 2012-10-23T13:09:25.117 回答
0

好吧,这就是它的愚蠢之处。一切都很好,除了我将密钥放在我不使用的布局文件中。大概是我疯了。这么快

  1. 即使您只是导出签名的应用程序,地图应用程序也将使用发布密钥。无需将应用程序放入 Android 商店即可运行。堆栈溢出中有一些误导性的评论说明了这一点。

  2. keytool 将询问密钥库的密码,它也将使用相同的密码来解锁别名密钥。只有当它不同时,它才会再次询问。

  3. 带有释放键的地图应用程序也可以与模拟器一起使用。只需 rmbr 即可使用 install adb ""

于 2012-10-29T09:46:33.197 回答