什么是加载从谷歌服务器

问题描述:

地图标记我有一个存储十万谷歌的服务器最有效的方式映射标记细节遍布全球,现在我试着在我的Android应用程序,以显示它们。 显然我不需要一次显示整个标记,而只是在用户正在看的地方和某个缩放处显示。即时通讯从服务器使用json文件发送标记,但我还没有意识到什么是最有效的方式加载它们,因为用户需要。 谢谢!什么是加载从谷歌服务器

你可以得到谷歌地图的中心位置的经纬度。然后,您可以将位置发送到您的服务器,并计算距离比某个距离更近的点,并仅返回那些点。

使用这样的事情:

mGoogleMap.setOnCameraChangeListener(new GoogleMap.OnCameraChangeListener() { 
      @Override 
      public void onCameraChange(CameraPosition cameraPosition) { 
       LatLng latLng = cameraPosition.target; 

       mRepository.requestPointsNearPosition(latLng) 
      } 
     }); 

所以每次你的相机改变位置,重新加载点。这样你总是只显示地图中的相关点。

也许你可以使用一个手柄来确保用户停止移动地图0.5秒的处理程序仅触发与地图的动作停止运动......等它自行抵消,如果地图上再次移动

+0

我是这么认为的,虽然,但什么是正确的点调用该函数? 我虽然它不会是有效的制作要求用户每次移动地图的中心 – Assaf1995

+0

我认为是什么病做服务器。谢谢! – Assaf1995

定义当前用户的规模和围绕中心的圆形区域,这是用户可以看到的几倍大。下载该地区的标记。你检查每当用户移动地图,如果新的视角属于该区域,绘制一个区域一个新的圈子和下载图标不包括以前的圈子

+0

谢谢你,但如果例如用户滚动地图到其他地球的一边,这是否意味着生病必须加载全部内容? – Assaf1995