OSMDroid 中 Bing 卫星视图的 initMetaData(this) 错误
initMetaData(this) Error with Bing Satellite View in OSMDroid
我想在 OSMDroid 中显示来自 Bing 的 Satellite Tiles 并安装了 'osmdroid-third-party-4.3.jar'。
以下代码发布在网上以显示卫星图块,但我总是得到错误:
'The method initMetaData() in the type BingMapTileSource is not applicable for the arguments' !
/* BING SATELLITE VIEW */
try{
BingMapTileSource.initMetaData(this);
String m_locale = Locale.getDefault().getDisplayName();
BingMapTileSource bing = new BingMapTileSource(m_locale);
bing.setStyle(BingMapTileSource.IMAGERYSET_AERIAL);
mapView.setTileSource(bing);
}
catch(Exception e){
e.printStackTrace();
}
没有参数 'this' 我得到错误:
'The method initMetaData() from the type BingMapTileSource is not visible'
有什么想法吗?
我通过包含正确的 'BingMapTileSource.java' !
解决了这个问题
Here 你可以找到一个带有 public 方法 initMetaData()
的版本
第一个回答错误。
2015 年 7 月 22 日更新
如何添加Bing地图到osmdroid
这里有分步说明。也许有人这样做会节省很多时间。
1.Add 依赖于 gradle
compile 'org.slf4j:slf4j-android:1.6.1-RC1'
compile 'org.osmdroid:osmdroid-android:4.3'
2.add 库 osmdroid-third-party from here
或
在我们的项目中添加三个类(BingMapTileSource.java、ImageryMetaData.java、ImageryMetaDataResource.java)。 from here
3.Getting 一个 Bing 地图键。 Instructions here
4.Add 清单的 Bing 映射键。
<meta-data android:name="BING_KEY" android:value="ApEqyap8rTa4WTNCNv-3pAGQc7XUsHS6595tuDI3MHR59QlahJ5bqYGYhMYJq6Ae" />
5.The 最后一步。添加地图代码
ResourceProxyImpl mResourceProxy = new ResourceProxyImpl(getContext().getApplicationContext());
MapView mMapView = new MapView(getContext(), 256, mResourceProxy);
mMapView.setBuiltInZoomControls(true);
mMapView.setMultiTouchControls(true);
try{
BingMapTileSource.retrieveBingKey(getContext());
String m_locale = Locale.getDefault().getDisplayName();
BingMapTileSource bing = new BingMapTileSource(m_locale);
bing.setStyle(BingMapTileSource.IMAGERYSET_AERIAL);
mMapView.setTileSource(bing);
}
catch(Exception e){
e.printStackTrace();
}
mapContent.addView(mMapView);
我想在 OSMDroid 中显示来自 Bing 的 Satellite Tiles 并安装了 'osmdroid-third-party-4.3.jar'。
以下代码发布在网上以显示卫星图块,但我总是得到错误:
'The method initMetaData() in the type BingMapTileSource is not applicable for the arguments' !
/* BING SATELLITE VIEW */
try{
BingMapTileSource.initMetaData(this);
String m_locale = Locale.getDefault().getDisplayName();
BingMapTileSource bing = new BingMapTileSource(m_locale);
bing.setStyle(BingMapTileSource.IMAGERYSET_AERIAL);
mapView.setTileSource(bing);
}
catch(Exception e){
e.printStackTrace();
}
没有参数 'this' 我得到错误:
'The method initMetaData() from the type BingMapTileSource is not visible'
有什么想法吗?
我通过包含正确的 'BingMapTileSource.java' !
解决了这个问题Here 你可以找到一个带有 public 方法 initMetaData()
的版本第一个回答错误。
2015 年 7 月 22 日更新
如何添加Bing地图到osmdroid
这里有分步说明。也许有人这样做会节省很多时间。
1.Add 依赖于 gradle
compile 'org.slf4j:slf4j-android:1.6.1-RC1'
compile 'org.osmdroid:osmdroid-android:4.3'
2.add 库 osmdroid-third-party from here
或
在我们的项目中添加三个类(BingMapTileSource.java、ImageryMetaData.java、ImageryMetaDataResource.java)。 from here
3.Getting 一个 Bing 地图键。 Instructions here
4.Add 清单的 Bing 映射键。
<meta-data android:name="BING_KEY" android:value="ApEqyap8rTa4WTNCNv-3pAGQc7XUsHS6595tuDI3MHR59QlahJ5bqYGYhMYJq6Ae" />
5.The 最后一步。添加地图代码
ResourceProxyImpl mResourceProxy = new ResourceProxyImpl(getContext().getApplicationContext());
MapView mMapView = new MapView(getContext(), 256, mResourceProxy);
mMapView.setBuiltInZoomControls(true);
mMapView.setMultiTouchControls(true);
try{
BingMapTileSource.retrieveBingKey(getContext());
String m_locale = Locale.getDefault().getDisplayName();
BingMapTileSource bing = new BingMapTileSource(m_locale);
bing.setStyle(BingMapTileSource.IMAGERYSET_AERIAL);
mMapView.setTileSource(bing);
}
catch(Exception e){
e.printStackTrace();
}
mapContent.addView(mMapView);