首页 / 浏览问题 / 移动GIS / 问题详情
android 无网情况怎么调用缓存的地图
4EXP 2023年07月14日
有网情况下在线加载地图会把看过的地方缓存下来吧?我在无网情况下去之前在线缓存过的地方看,地图是空白的,这是因为什么呢?无网情况怎么调用缓存的地图?

1个回答

您好,imobile访问的在线地图会以栅格瓦片的形式将已缓存地图数据默认放到“sdcard/SuperMap/data”下面的,如果您缓存的是天地图服务,那下面的WMTS中找到*.sci文件便是栅格瓦片的配置文件了,之后再加载该文件即可,相关代码如下:

m_workSpace = newWorkspace();

//将地图显示控件和工作空间关联

m_mapView = (MapView)findViewById(R.id.Map_view);

m_mapControl= m_mapView.getMapControl();

m_mapControl.getMap().setWorkspace(m_workSpace);

//缓存数据路径

String SDCARD = android.os.Environment.getExternalStorageDirectory().getAbsolutePath() ;

String url = SDCARD + "/changchun/changchun.sci";

DatasourceConnectionInfo info = newDatasourceConnectionInfo();

//设置别名

info.setAlias(changchun);

//设置Server

info.setServer(url);

//设置数据源连接的引擎类型为REST 地图服务引擎类型

info.setEngineType(EngineType.Rest);

//获取数据源集合

Datasources datasources = m_workSpace.getDatasources();

//打开数据源

Datasource ds = datasources.open(info);

//添加到地图窗口中

m_mapControl.getMap().getLayers().add(ds.getDatasets().get(0),true);

//全幅显示

m_mapControl.getMap().viewEntire();

3,415EXP 2023年07月14日
...