android - 如何在 Arcgis android Sdk 中使用来自 GIBS 的基本地图
问题描述
我想在 arcgis android sdk 中使用来自NSA GIBS的最新图像可能吗?我也可以从上述服务下载瓷砖到缓存/离线地图吗?
我已经尝试过:
来自 arcgis android 和
WebTiledLayer的WMSLayer类以下代码我用于 WebTiledLayer
mMapView = (MapView) findViewById(R.id.mapView);
String templateUri = "https://gibs.earthdata.nasa.gov/wmts/epsg3857/best/MODIS_Terra_Aerosol/default/2014-04-09/GoogleMapsCompatible_Level6/{level}/{row}/{col}.png";
// webtile layer
final WebTiledLayer webTiledLayer = new WebTiledLayer(templateUri);
webTiledLayer.loadAsync();
webTiledLayer.addDoneLoadingListener(new Runnable() {
@Override
public void run() {
if (webTiledLayer.getLoadStatus() == LoadStatus.LOADED) {
// use webtile layer as Basemap
final ArcGISMap map = new ArcGISMap(new Basemap(webTiledLayer));
mMapView.setMap(map);
// custom attributes
}else {
webTiledLayer.getLoadError().printStackTrace();
}
}
});
结果是一张空地图
解决方案
我刚刚测试了你的代码,它似乎工作得很好。您是否在清单中请求了 Internet 权限?
<uses-permission android:name="android.permission.INTERNET" />
尝试将您的代码放在此示例的 onCreate 中——它会起作用。
推荐阅读
- haproxy - 如何替换 haproxy 请求中的域?
- r - 使用 XPath 的 findElement 逐行工作,但在循环中失败
- c++ - 如何验证 C++ 程序是否使用 Doxygen 格式有良好的文档记录?
- javascript - What's wrong with health and damage system
- android - Android SAF,无法复制文件,未设置 FLAG_SUPPORTS_COPY
- r - 根据先前列的结果在 R 中创建一个新列
- artificial-intelligence - 我对模拟退火有概念问题?
- c++ - 从 Windows 应用程序调用 linux docker 容器
- jupyter-lab - 突出显示 Jupyterlab 3 中的事件
- php - 为什么我放 SSL 证书时 Socket.io 无法连接?