在显示区域之外加载Google地图

时间:2019-06-11 07:46:46

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

我在我的android应用程序中使用google map来显示用户的当前位置。每当用户位置发生更改时,我都会使用“ animateCamera ” API来移动地图。

问题: 当用户以超过30公里/小时的速度移动或互联网连接不畅时,移动地图时不会立即加载新区域,仅显示灰色图块。

请帮助我实现以下任何解决方案。

  1. 如何在显示当前位置时加载地图附近区域(现在,地图片段仅加载到移动设备的显示区域)。
       (或)

  2. 下载当前位置半径1 km的离线地图。

谢谢。

1 个答案:

答案 0 :(得分:2)

您可以将Tile Overlays与Url一起用于图块http://mt1.google.com/vt/lyrs=[MAP_KIND]&x=[TILE_X]&y=[TILE_Y]&z=[ZOOM_LEVEL],例如:

http://mt1.google.com/vt/lyrs=m&x=1465&y=949&z=11

用于获取地图图块并创建缓存。但请仔细阅读p。 Google Maps APIs Terms of Service的10.5.d(及其他):

  

b)没有缓存或存储。您将不会预取,缓存,索引或   存储将在服务之外使用的任何内容,但您可以   仅出于改进目的而存储有限数量的内容   网络延迟导致您的Maps API实现的性能   (并非出于阻止Google准确跟踪的目的   用法),并且只有在这样的存储空间下:

     

i。是临时的(绝不超过30个日历日);

     

ii。是安全的;

     

iii。不操纵或聚合内容或服务的任何部分;和

     

iv。不会以任何方式修改归因。