【问题标题】:Android "Hello, MapView" Tutorial - Map Tiles Do Not LoadAndroid“你好,MapView”教程——地图瓦片不加载
【发布时间】:2010-12-21 00:54:54
【问题描述】:

我是 Android 软件开发的新手,也是这个网站的新手。我希望有人可能对我遇到的问题有一些经验。

我一直在关注Hello, MapView tutorial,不仅是为了学习 Android 框架,还为了学习 Google 地图库。我已经尽力按照教程的指示来实现。我的问题是应用程序确实在我的模拟器中加载(或者甚至在我的手机上),但地图图块没有加载。

搜索谷歌我发现另一个网站上的其他人发布的帖子有同样的问题,但他/她的问题是添加到 AndroidManifest.xml 文件中的重要元素的顺序不正确。我在我的身上仔细检查了这一点,但一切似乎都是正确的。

所以,我不确定问题出在哪里,希望其他人以前也看到过。如果有帮助,我可以提供任何 sn-ps 代码。

谢谢。

【问题讨论】:

  • 确保 keytool 程序在您的路径中。除非在路径中,否则 ADT 将无法签署您的应用程序。

标签: android google-maps android-mapview


【解决方案1】:

未加载磁贴通常是未正确设置 API 密钥的结果。 Obtaining a Maps API key

要回答您留给 d. 的回复:如果您希望在从 Eclipse 运行时让它“正常工作”,您需要为您的调试证书获取 API 密钥。 There's instructions on the same page 和以前一样。请注意,您必须在发布之前换回其他密钥。

【讨论】:

  • 感谢已修复。这正是我所需要的。
  • @fiXedd 链接似乎不再起作用了.. 你能更新一下吗?
【解决方案2】:

我猜问题不在于您的地图密钥不正确,而是您没有正确的密钥库设置。应用程序需要由您用于生成映射密钥的同一密钥库签名。您已经注意到,您可以在自己签署应用程序时使其工作,但您需要设置一个调试密钥库才能将 Maps API 与常规 Eclipse 构建一起使用。

所有 Eclipse 构建都需要调试密钥库;您通常不会注意到它,因为 ADT 会自动为您生成一个。您应该follow the directions here 并创建自己的调试密钥库,或者您应该使用 ADT 自动为您创建的调试密钥(它会告诉您它在 Windows > Preferences > Android > Build中创建它的位置>) 并注册另一个 Maps API 密钥。该密钥适用于 Eclipse。

(PS,这确实让编译发布变得很麻烦,因为您需要根据签名密钥库来回切换密钥。)

【讨论】:

  • 谢谢丹尼尔。是的,这正是我的问题,正如 fixedd 也指出的那样。我现在已经设置了调试密钥,并且 Google 磁贴/数据正在通过。再次感谢您的回复和时间。
  • 那么有没有很好的方法来处理这个问题,还是每次发布之前都必须切换键?
【解决方案3】:

我也遇到了瓷砖无法加载的问题。正如您提到的原始帖子,一种可能性是 AndroidManifest.xml 文件中元素的顺序。具体来说,我最初有这行:

<uses-permission android:name="android.permission.INTERNET" />

在应用程序元素之后。一旦我将此行移到应用程序元素之前,我的地图图块就会再次开始加载。

【讨论】:

    【解决方案4】:

    我认为,未加载的图块几乎总是使用不准确的 API 密钥的结果。你检查过你的吗?

    详情:Obtaining a Maps API key

    【讨论】:

    • 我知道我的 API 密钥是正确的。但是您的回复使我调查了我的申请的签名。我手动完成了导出过程,获取生成的 APK 文件并使用用于获取 API 密钥的密钥对其进行签名,然后安装了后续的 APK 文件,并且成功了。所以,我想我的下一个问题是如何让这个过程自动化,以便当我在 Eclipse 中点击“运行”按钮时,它会构建、签名并将其安装到模拟器中?
    【解决方案5】:

    我遇到了同样的问题...我的错误是在清单文件中将INTERNET 权限放入应用程序中。将其移出(上行)后,一切正常。

    【讨论】:

    • 啊,谢谢,我知道我的 APIkey 过程是正确的,因为我以前做过,但是直到这个解决方案才开心。
    【解决方案6】:

    确保顶部面板上有 3g。如果您不这样做,则没有互联网连接。有时我必须打开和关闭模拟器几次才能启动 3g。

    【讨论】:

      【解决方案7】:

      d。可能是正确的。但是,互联网问题也会导致类似的症状。确保您的INTERNET 权限位置正确,并且没有阻止访问 Internet 的代理服务器/防火墙。

      【讨论】:

      • 在 d. 的帖子下查看我的评论。
      【解决方案8】:

      另一个问题可能是您落后的代理。即使模拟器中的地图应用和互联网浏览器工作正常,代理也会大大降低速度,并且会影响您的应用。

      【讨论】:

        【解决方案9】:

        这是一个老问题,但这里还有一个答案:如果你和我一样仓促,你可能会不小心从网页复制指纹代码而不是 API 密钥:)

        【讨论】:

          【解决方案10】:

          您所谈论的您好,MapView 教程不再有效。无法再进行新的 V1 地图应用程序。

          关注https://developers.google.com/maps/documentation/android/ 获取 Google Maps Android API v2 应用程序。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-07-25
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多