【问题标题】:OSMDroid does not show mapOSMDroid 不显示地图
【发布时间】:2016-01-05 20:54:29
【问题描述】:

我通过图集生成器生成了一个sqlite 磁贴(根据this 指南),但是当我在OSMDroid 中使用此磁贴时,OSMDroid 没有显示任何内容! 我不知道是什么问题,我已经检查了缩放级别、中心位置等所有内容。

这是我的代码:

MapView map = (MapView) rootView.findViewById(R.id.map);

map.setTileSource(new XYTileSource(Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator + "osmdroid" + File.separator + "tehran17.sqlite", 14, 17, 256, ".jpg", new String[] {}));
//....
map.setUseDataConnection(false);
IMapController mapController = map.getController();
mapController.setZoom(15);
GeoPoint startPoint = new GeoPoint(35.692855, 51.356535);
mapController.setCenter(startPoint);

我已经检查了所需的权限,例如外部读写,我已经检查了生成的 sqlite 文件,似乎没问题。

【问题讨论】:

    标签: android sqlite osmdroid


    【解决方案1】:

    根本原因:您提供的 Tile Source Name 是文件路径,而不是 tile 源的实际名称。如果您查看数据库,则会列出每个瓦片的每个瓦片源(假设为 osmdroid 瓦片 sqlite 格式)。我认为列名是“来源”或“提供者”。这就是 XYZTileSource 的“名称”。

    【讨论】:

      【解决方案2】:

      我终于解决了这个问题!
      和gradle有关,不要从gradle中添加OSMDROID,因为它无法访问外部sd,下载项目源并将其作为模块添加到您的应用程序中。

      【讨论】:

      • 嗨,阿里。你是什​​么意思?你到底在做什么?
      猜你喜欢
      • 1970-01-01
      • 2014-10-20
      • 1970-01-01
      • 2013-07-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多