Как загрузить и отобразить MBTiles (автономную карту) в MapLibre Android (Kotlin)?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Как загрузить и отобразить MBTiles (автономную карту) в MapLibre Android (Kotlin)?

Сообщение Anonymous »

Я пытаюсь использовать MapLibre Android SDK для отображения автономной карты, хранящейся в виде файла MBTiles.

Однако я не могу найти понятный и актуальный пример, показывающий, как загрузить файл MBTiles в качестве растрового или векторного источника в Kotlin.
Что у меня есть:
  • Приложение Android с использованием MapLibre 11.x
  • Файл MTBiles расположен в:

    Код: Выделить всё

    assets/map.mbtiles
    (или внешнее хранилище)
  • MBTiles содержит либо растровые фрагменты, либо векторные фрагменты (я не совсем уверен, какой формат ожидает MapLibre)
Что я пробовал:
На данный момент я обнаружил, что MapLibre поддерживает автономные фрагменты источники, используя FileSource или собственный TileStore, но мне не удалось найти рабочий пример для MBTiles.
Я также пробовал что-то вроде этого:

Код: Выделить всё

val style = mapView.getMapboxMap().loadStyle(
Style.MAPBOX_STREETS
) {
it.addSource(
RasterSource.Builder("offline", "file:///android_asset/map.mbtiles")
.tileSize(256)
.build()
)
}
Но MapLibre выдает ошибку, сообщающую, что не может прочитать источник плитки.
Я также проверил, нужен ли мне собственный экземпляр TileServerOptions или TileStore, но документация очень ограничена.
Чего я пытаюсь достичь:
Я просто хочу:
  • Загрузить Файл .mbtiles (векторный или растровый)
  • Отобразите его в MapLibre MapView
  • Используйте карту на 100 % в автономном режиме
Мои вопросы:
  • Поддерживает ли MapLibre Android поддерживает загрузку MBTiles напрямую?
  • Если да, существует ли рабочий пример (Kotlin) добавления растрового или векторного слоя MBTiles?
  • Если нет, то какой подход рекомендуется использовать?
    • Конвертировать MBTiles → PMTiles?
    • Использовать собственный загрузчик плиток?
    • Использовать другой SDK?
Дополнительная информация:
  • Android Studio: Flamingo / Koala
  • Kotlin
  • Версия MapLibre: (при необходимости укажите)
Будем очень благодарны за любую помощь или пример рабочего кода!

Подробнее здесь: https://stackoverflow.com/questions/798 ... oid-kotlin
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»