我在开发一些自定义地图叠加层时遇到了一些奇怪的错误,有人经历过这些吗?请提前帮忙。
BaseTileRequest.readResponseData(BaseTileRequest.java:115)
MapService$MapTileRequest.readResponseData(MapService.java:1473)
MapService$MapTileRequest.readResponseData(MapService.java:1473)
09-17 00:53:25.933: WARN/System.err(32480): java.io.IOException: Server returned: 3
09-17 00:53:25.933: WARN/System.err(32480): at android_maps_conflict_avoidance.com.google.googlenav.map.BaseTileRequest.readResponseData(BaseTileRequest.java:115)
09-17 00:53:25.938: WARN/System.err(32480): at android_maps_conflict_avoidance.com.google.googlenav.map.MapService$MapTileRequest.readResponseData(MapService.java:1473)
09-17 00:53:25.938: WARN/System.err(32480): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.processDataRequest(DataRequestDispatcher.java:1117)
09-17 00:53:25.943: WARN/System.err(32480): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher.serviceRequests(DataRequestDispatcher.java:994)
09-17 00:53:25.943: WARN/System.err(32480): at android_maps_conflict_avoidance.com.google.googlenav.datarequest.DataRequestDispatcher$DispatcherServer.run(DataRequestDispatcher.java:1702)
09-17 00:53:25.948: WARN/System.err(32480): at java.lang.Thread.run(Thread.java:856)
答案 0 :(得分:5)
我确实碰到了这个,尽管我跟着所有人都说here。
假设您确实按照此链接进行操作,以下是我解决问题的方法:
长篇故事:
一切正常,直到我将整个项目复制到另一台PC并将其导入Eclipse。这会更改所有内容,因为您获取的API密钥链接到您用于生成API密钥的计算机上的调试密钥库。由于我在另一台机器上运行/调试android应用程序(因此另一个调试密钥库),因此API密钥无效。所以我必须生成一个新的API密钥,如下所述。
短篇小说:
如果您正在使用其他计算机生成新的API密钥,请按照here所述计算MD5指纹,然后使用此MD5生成API密钥here指纹
答案 1 :(得分:1)
之前我遇到过这个问题,可能是由几件事引起的,检查这些东西通常会解决它。
您使用的地图api密钥错误。请记住,此密钥适用于Android的每次安装,因此如果您更换了计算机,则需要重新生成新密钥。这是最可能出现的问题。
如果您使用的是eclipse,那么java构建路径可能会被错误地设置/设置错误。我发现google-maps导入可能需要在Eclipse的构建路径声明中位于顶部或接近它。
答案 2 :(得分:1)
当您尝试获取MD5指纹时,keytool命令可能会返回SH1。在这种情况下,在“keytool”命令之后使用“-v”来获得MD5指纹