16

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

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

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

所以,我不确定问题是什么,并希望其他人以前见过。如果有帮助,我可以提供任何代码片段。

谢谢你。

4

10 回答 10

20

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

要回答您留给 d. 的回复:如果您希望在从 Eclipse 运行时让它“正常工作”,您需要为您的调试证书获取一个 API 密钥。与以前相同的页面上有说明。请注意,您必须在发布之前换回其他密钥。

于 2009-11-27T16:49:37.123 回答
5

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

所有 Eclipse 构建都需要调试密钥库;您通常不会注意到它,因为 ADT 会自动为您生成一个。您应该按照此处的说明创建自己的调试密钥库,或者您应该使用 ADT 自动为您创建的调试密钥(它会显示它在Windows > Preferences > Android > Build中创建它的位置)并注册另一个 Maps API 密钥。该密钥将与 Eclipse 一起使用。

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

于 2009-11-27T17:09:31.700 回答
5

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

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

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

于 2010-01-23T16:36:34.100 回答
3

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

详细信息:获取 Maps API 密钥

于 2009-11-27T16:01:58.590 回答
2

我有同样的问题......我的错误是在清单文件中将INTERNET权限放入应用程序中。将其移出(向上)后,一切都运行良好。

于 2011-08-25T14:20:20.247 回答
1

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

于 2009-11-30T07:58:48.820 回答
0

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

于 2009-11-27T16:10:44.420 回答
0

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

于 2010-01-15T21:47:27.117 回答
0

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

于 2011-11-10T13:33:04.500 回答
0

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

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

于 2013-10-29T14:13:20.147 回答