【问题标题】:Osmdroid - open zipped tiles from ZIP?Osmdroid - 从 ZIP 打开压缩瓷砖?
【发布时间】:2012-06-03 08:35:19
【问题描述】:

我的离线地图图块正在增加 ZIP 中允许的最大文件数(65535 个文件),所以我正在考虑压缩一些文件。

OSMdroid Mapnik 格式的格式为 X/Y/tile.png。其中 X 是缩放,Y 是列,其中 tile 是地图中所需缩放的行。我正在考虑压缩 X 或 Y,然后将它们一起压缩到一个 ZIP 文件中。问题是,当它们位于 ZIP 文件中时,Osmdroid mapView 看不到我的图块。你知道,OSMdroid 在哪个类中处理打开图块?我想我可能不得不在代码中改变这种行为。你遇到过什么问题吗?或者有什么简单的方法可以让 mapView 看到 ZIP 中的压缩图像?

谢谢

【问题讨论】:

    标签: android zip osmdroid


    【解决方案1】:

    如果您想使用 Zip 文件并且它增加了大小限制,只需解压缩文件并将其拆分为两个或多个 zip 文件。为此,您可以将一些缩放级别图块移动到其他 zip 文件。 我遇到了同样的问题,并通过在另一个文件中移动缩放级别 16 到 18 的图块来解决这个问题。 但我认为在小型设备中最好使用解压缩的瓷砖。速度提升10倍以上。

    【讨论】:

    • 我还在几个拉链上分开了瓷砖,效果很好。您可以分开缩放级别,甚至一个缩放级别是不同的 zip,并为不同的 tile 源设置多个 zip,而不会出现问题。
    【解决方案2】:

    使用 sqlite。它速度更快,并且没有大小限制。

    https://github.com/osmdroid/osmdroid/blob/master/osmdroid-android/src/main/java/org/osmdroid/tileprovider/modules/ZipFileArchive.java

    更多存档提供商在这里 https://github.com/osmdroid/osmdroid/tree/master/osmdroid-android/src/main/java/org/osmdroid/tileprovider/modules

    我不认为限制是 osmdroid 特定的东西。我认为这是基于 osmdroid 打开文件并通过目录查找特定文件的方式的 java 和/或 android 限制。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-10
      • 2016-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多