使用android Google Maps API v2作为离线图块的查看器:是否可能?

时间:2013-04-17 09:16:20

标签: android maps offline google-maps-android-api-2

Google地图组件(com.google.android.gms.maps.GoogleMap)允许用户渲染自定义切片(OpenStreetMap或其他)。这些磁贴可以在设备上并且可以脱机使用,这正是我通过扩展TileProvider所做的。与a:

一起执行此操作
mMap.setMapType(GoogleMap.MAP_TYPE_NONE);

我没有从谷歌地图服务器中提取任何数据,并且可以合理地预期该组件在没有互联网连接的情况下工作。 (我在此强调我不是要缓存Google的数据;我正在使用独立于Google地图服务器的离线图块。)

我认为一切都很好,直到我意识到如果第一次执行时,地图组件将无效,设备将处于脱机状态。在这种情况下,我收到一条消息:

  

无法加载地图。无法联系谷歌服务器

我想这背后的原因是谷歌的API密钥需要我的应用程序进行身份验证才能允许组件执行。

任何人都可以确认这是正确的吗?我真正想确定的是,如果组件在线执行一次,它将在之后运行正常。我必须确保没有超时问题需要组件稍后重新进行身份验证,这基本上会使我的应用程序无用。这需要我转向其他组件(例如OS Android)。

对此的任何启示都将不胜感激。即使被指向我希望得到谷歌开发者回复的渠道也会很有用。

由于

1 个答案:

答案 0 :(得分:8)

截至3.0.27的Google Play服务APK已修复,只需与服务器联系一次。您每次都会在logcat中看到错误,但它会起作用。

更多信息: http://code.google.com/p/gmaps-api-issues/issues/detail?id=4817

在这里: http://code.google.com/p/gmaps-api-issues/issues/detail?id=5017