【问题标题】:Use mapBox tile as osmdroid tileSource使用 mapBox tile 作为 osmdroid tileSource
【发布时间】:2019-02-10 18:31:30
【问题描述】:

我是 android 地图的新手,我想用 osmdroid 创建简单的地图应用程序。 我加了

implementation 'org.osmdroid:osmdroid-android:6.0.3'

到我的 gradle 并且我在 ma 类中以这种方式使用:

final ITileSource tileSource = TileSourceFactory.HIKEBIKEMAP;
mapView.setTileSource(tileSource);
mapView.setTilesScaledToDpi(true);
mapView.setMultiTouchControls(true);
mapView.setVisibility(View.VISIBLE);

现在我使用TileSourceFactory.HIKEBIKEMAP 作为平铺源。根据这个page,我想使用mapbox tile,所以我在mapbox site注册并创建了Access tokens,现在我找不到创建MAPBOX_MAPID它在哪里?

创建ID 后如何使用mapbox.mapbox-streets-v8

【问题讨论】:

    标签: android mapbox osmdroid


    【解决方案1】:

    需要注意的重要事实:mapbox.mapbox-streets-v8 是一个 vector 图块集。 Osmdroid 不直接支持矢量图块,只有位图支持。幸运的是,Mapbox 仍然为其图块集提供位图图块。

    使用mapbox.mapbox-streets-v8(例如,您也可以尝试mapbox.streets)作为MAPBOX_MAPID,并按照osmdroid 文档中的说明使用MapBoxTileSource

    final MapBoxTileSource tileSource = new MapBoxTileSource();
    //option 1, load your settings from the manifest
    tileSource.retrieveAccessToken(context);
    tileSource.retrieveMapBoxMapId(context);
    //option 2, provide them programmatically
    tileSource.setAccessToken(context);
    tileSource.setMapBoxMapId(context);
    mMapView.setTileSource(tileSource);
    

    它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-08-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多