2016-06-10 162 views
0

我需要看到离线平铺在应用osmdroid离线地图不加载瓷砖

我已经下载使用瓦片“移动阿特拉斯造物主2.0.0 Beta 1的”配置如下

enter image description here

瓦片压缩文件是在

/mnt/sdcard/osmdriod/tiles.zip 

MyActivity代码如下

MapView mapView = new MapView(this); //constructor 

    mapView.setTileSource(new XYTileSource("MapQuest", 0, 10, 256, ".png", new String[] {})); 

    mapView.setClickable(true); 
    mapView.setBuiltInZoomControls(true); 
    mapView.getController().setZoom(1); //set initial zoom-level, depends on your need 
    mapView.getController().setCenter(new GeoPoint(52.516667, 13.383333)); //This point is in Enschede, Netherlands. You should select a point in your map or get it from user's location. 
    mapView.setUseDataConnection(false); //keeps the mapView from loading online tiles using network connection. 
    setContentView(mapView); 

和AndriodManifest.xml具有这些权限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.INTERNET" /> 

enter image description here 注意瓷砖不能显示在地图上:

osmdroid版本 编译“ org.osmdroid:osmdroid-android:[email protected]'

回答

1

尝试打开您的osm zip文件并检查tiles文件夹名称。该文件中的tiles文件夹名称必须与XYTileSource构造函数的第一个参数相同。 如果文件夹名称为“OpenStreetMap MapQuest”,例如你可能需要写这个:

mapView.setTileSource(new XYTileSource("OpenStreetMap MapQuest", 0, 10, 256, ".png", new String[] {}));