如何为osmdroid准备离线地图的地图图块存档?

时间:2014-04-25 14:44:22

标签: android offline osmdroid

我准备了this simple project来测试osmdroid的离线地图功能。在第一步中,我使用Internet连接下载磁贴。一切都按预期工作。以下代码段显示了包含地图视图的活动的设置。

public class MainActivity extends Activity {

    public static final GeoPoint BERLIN = new GeoPoint(52.516667, 13.383333);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MapView mapView = (MapView) findViewById(R.id.mapview);
        mapView.setClickable(true);
        mapView.setBuiltInZoomControls(true);
        mapView.setMultiTouchControls(true);
        mapView.setUseDataConnection(true);
        mapView.setTileSource(TileSourceFactory.MAPNIK);

        IMapController mapViewController = mapView.getController();
        mapViewController.setZoom(15);
        mapViewController.setCenter(BERLIN);
    }

}

现在我想手动提供包含磁贴位图的存档文件。这些是我为离线模式做准备的步骤:

  1. 我压缩了SD卡上的现有文件夹,可以在/mnt/sdcard/osmdroid/tiles/
  2. 中找到
  3. 我将生成的Mapnik.zip一级放在/mnt/sdcard/osmdroid/
  4. 之上
  5. 我删除了/mnt/sdcard/osmdroid/tiles/Mapnik中的所有缓存切片。
  6. 现在我关闭手机上的无线连接并重启应用程序。 没有地图图块显示。为什么?

1 个答案:

答案 0 :(得分:1)

您应该使用tile packager来创建自己的拉链,或mobile atlas creator。但是,如果您将zip中的所有* .tile文件重命名为* .png,它应该可以工作(未经测试)。