我已经使用MapTiler制作了一些瓷砖,我试图用Android安装到Google地图上并且没有太多运气。 Android文档在这个主题上非常稀疏,但我已经完成了我认为应该工作的东西,但是当我放大到正确的水平时我没有看到这些瓷砖。我试图在onMapReady()回调中进行叠加,我应该在其他地方做这个吗?
这是我对onMapReady方法的代码:
@Override
public void onMapReady(GoogleMap googleMap) {
googleMap.setMapType(GoogleMap.MAP_TYPE_SATELLITE);
googleMap.setMyLocationEnabled(true);
CameraPosition cameraPosition = new CameraPosition.Builder().target(new LatLng(44.481705,-114.9378269)).zoom(16).build();
googleMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));
mTileOverlay = googleMap.addTileOverlay(new TileOverlayOptions()
.tileProvider((new UrlTileProvider(256, 256) {
@Override
public URL getTileUrl(int x, int y, int zoom) {
String s = "http://www.example.com/tiles/"+zoom+"/"+x+"/"+y+".png";
// added this logging to see what the url is
Log.d("home", s);
try {
return new URL(s);
} catch (MalformedURLException e) {
throw new AssertionError(e);
}
}
})));
}
这里的任何想法?
TIA
编辑:我已经添加了一些日志记录来查看'' (我的网址)正在返回,并且它正在返回正确的网址,我的服务器正在从该网址正确提供网格,但仍未在Android地图上看到任何内容。答案 0 :(得分:0)
事实证明我在getTileUrl()方法中有一个toast,它阻止了图像的返回。当我删除它时,瓷砖正确提供。