TileOverlay与android和谷歌地图

TileOverlay与android和谷歌地图,android,google-maps,overlay,Android,Google Maps,Overlay,我已经使用MapTiler创建了一些图块,我正试图用android将它们覆盖到谷歌地图上,但运气不太好。关于这个主题的Android文档非常稀少,但是我已经做了我认为应该有效的事情,但是当我放大到正确的级别时,我没有看到这些瓷砖。我试图在onMapReady()回调中实现覆盖,我应该在其他地方这样做吗 以下是我为onMapReady方法编写的代码: @Override public void onMapReady(GoogleMap googleMap) { googleMap.setM

我已经使用MapTiler创建了一些图块,我正试图用android将它们覆盖到谷歌地图上,但运气不太好。关于这个主题的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);
            }
        }
    })));
}
有什么想法吗

短暂性脑缺血发作


编辑:我添加了一些日志来查看“s”(我的url)返回的内容,它返回了正确的url,我的服务器从该url正确地提供了分幅,但在android中仍然没有在地图上看到任何内容。

结果是,我的getTileUrl()方法中有一个吐司,阻止了图像返回。当我把它取下来的时候,瓷砖的供应是正确的

你的代码是正确的。您能使用知名的瓷砖服务进行检查吗?例如
strings=”http://b.tile.openstreetmap.org/“+zoom+”/“+x+”/“+y+”.png”我的getTileUrl()中有一个祝酒词,真是太棒了。自从我把它移除后,一切都正常了。谢谢你的评论。很高兴听到它起作用了!你能发布一个答案并接受它,这样这个问题可以帮助别人吗?