2016-08-25 53 views
0

在XML的MapView如何改变OSMdroid瓷砖源的MapQuest

<org.osmdroid.views.MapView 
     android:id="@+id/OSMap" 
     android:visibility="visible" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" /> 

在主要活动代码

MapView myMap = (MapView) findViewById(R.id.OSMap); 
myMap.setTileSource(new XYTileSource("MapQuest" , 16 , 18 , 256 ,".png" , new String[] {"http://otile1.mqcdn.com/tiles/1.0.0/map/", 
          "http://otile2.mqcdn.com/tiles/1.0.0/map/", 
          "http://otile3.mqcdn.com/tiles/1.0.0/map/", 
          "http://otile4.mqcdn.com/tiles/1.0.0/map/"})); 

Output

我有2个问题。

  • 是否可以在OSMdroid映射中添加MapQuest作为源代码?
  • 如果可能的话,那么在OSMdroid中为MaqQuest添加API密钥。
+1

不,它不再可以使用Mapquest服务瓷砖的来源

相关的代码。它曾经是最近被撤回的。没有瓦片源需要一个API密钥,现在也没有一个 – NickT

+0

你的图片已经说了一切。选择不同的瓷砖供应商。 – scai

+0

@NickT谢谢 –

回答

0

地图探索砖被映射盒所托管的MapQuest访问瓷砖。 Osmdroid已经更新以反映5.3版本的变化,应该在几天内减少。你可以随时取消你需要修复的源头。

您需要在清单中或以编程方式指定的映射框键。请参阅github上的示例项目

此问题已在osmdroid问题 #332中得到了解决,该问题可能会尽快清除此问题。对于osmdroid V5.3 +

清单 <meta-data android:name="MAPQUEST_ACCESS_TOKEN" android:value="pk...YOUR MAPBOX KEY!.."/>

将瓷砖源 mMapView.setTileSource(new MapQuestTileSource(getContext()));

+0

感谢您的信息 –