Android 地图分幅在地形和法线类型之间闪烁
我有一个谷歌地图v2应用程序。渲染期间,贴图分幅在地形类型和法线类型之间闪烁。您可以在下面的屏幕截图中看到平铺边界。每个瓷砖似乎在两种类型之间闪烁,然后固定在一种类型上 平移或缩放会再次触发整个闪烁。有些瓷砖似乎比其他瓷砖更容易闪烁,但这是不可预测或一致的 地图设置为“地形类型”:Android 地图分幅在地形和法线类型之间闪烁,android,google-maps,google-maps-android-api-2,google-play-services,Android,Google Maps,Google Maps Android Api 2,Google Play Services,我有一个谷歌地图v2应用程序。渲染期间,贴图分幅在地形类型和法线类型之间闪烁。您可以在下面的屏幕截图中看到平铺边界。每个瓷砖似乎在两种类型之间闪烁,然后固定在一种类型上 平移或缩放会再次触发整个闪烁。有些瓷砖似乎比其他瓷砖更容易闪烁,但这是不可预测或一致的 地图设置为“地形类型”: map.setMapType(MAP_TYPE_TERRAIN); 这在我的安卓4.1手机和安卓4.4 Nexus7上都会发生。我最近才注意到它,所以它可能是在谷歌Play服务(目前使用的是update 13)的
map.setMapType(MAP_TYPE_TERRAIN);
这在我的安卓4.1手机和安卓4.4 Nexus7上都会发生。我最近才注意到它,所以它可能是在谷歌Play服务(目前使用的是update 13)的最后一次更新中出现的。升级到update 15没有任何区别,闪烁仍在继续
以前有人见过这种行为吗
编辑:从google play services v16开始,该问题已得到修复 可悲的是,这是一个问题,我希望它可能很快就会得到解决;话虽如此,但仍存在一些问题 根据此问题,您可以通过手动设置
TileOverlay
并使用clearTileCache()
来避免闪烁。明确的警告是,在整个时刻,你失去了所有的数据,可能会看到空白,清除缓存是在现场,不会考虑特定的部分或清除只有在新的获取。
文件说明:
平铺提供程序提供平铺覆盖中使用的图像。在将平铺提供程序添加到地图之前,必须指定该提供程序。添加互动程序提供程序后,无法对其进行更改;但是,您可以修改磁贴提供程序的行为,以针对特定坐标返回不同的图像。如果互动程序提供程序提供的互动程序发生更改,则必须在之后调用clearTileCache(),以确保不再渲染以前的互动程序
如果可行,另一种选择是使用OpenStreetMap作为地图的覆盖/源。我过去也遇到过一些类似的问题。在向左滑动地图的过程中,地图本身开始闪烁。最后,我们不得不在整个地图上放置一个不可见的
线性布局
,将焦点放在它上面,并在过渡后将其移除。(我找不到相关的博客帖子)。可能无法解决您的问题,但只是为了记录……如果这只是针对您的应用程序,我建议您在地图中添加ViewTreeObserver,并在其中更改地图类型。如果这个问题从内部持续存在,我不认为你的问题来自你的软件。不过,如果一切顺利的话。。。你可能做错了什么。你能添加与地图相关的代码吗?这似乎是谷歌地图的内部错误。我见过这种行为,但只在糟糕的互联网和调试过程中出现过。你能确认这两件事现在不是这样吗?