【问题标题】:How to prepare a map tiles archive for osmdroid for offline maps?如何为 osmdroid 准备离线地图的地图切片存档?
【发布时间】:2014-04-25 14:44:22
【问题描述】:

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

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. 我将生成的Mapnik.zip 放在/mnt/sdcard/osmdroid/ 的上一层。
  3. 我删除了/mnt/sdcard/osmdroid/tiles/Mapnik中的所有缓存切片。

现在我关闭手机上的无线连接并重新启动应用程序。 没有显示地图图块。 为什么?

【问题讨论】:

    标签: android offline osmdroid


    【解决方案1】:

    您应该使用tile packagermobile atlas creator 创建您的压缩包。但是,如果您将 zip 中的所有 *.tile 文件重命名为 *.png,它应该可以工作(未经测试)。

    【讨论】:

    • 不错!我试了这么久,但从来没有看到文件扩展名是.png.tile。我在提取的文件夹中将它们重命名.png,然后地图以离线模式显示。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 1970-01-01
    • 2011-12-29
    • 2014-04-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多