2017-08-31 204 views
0

我可以从ArcGIS Android SDK-100.1.0下载地图,但之后我将如何编辑此地图,即添加或删除标记点,并在此编辑之后我需要将离线编辑数据同步到ArcGIS Map服务器。这里是我的离线地图代码 -ArcGIS Runtime Android SDK100.1.0离线地图编辑和同步

private MapView mMapView; 
private ArcGISMap map; 
private ArcGISTiledLayer tiledLayer; 
private Geodatabase geodatabase; 
private Activity activity; 

public void loadOfflineMap() { 
    Toast.makeText(activity, activity.getFilesDir().getAbsolutePath(), Toast.LENGTH_LONG).show(); 

    //--- get links to cached resources 
    String strTpkPath = activity.getFilesDir().getAbsolutePath()+"/tiles.tpk"; 
    String strGeoDbPath = activity.getFilesDir().getAbsolutePath()+"/layers.geodatabase"; 

    File sdCard = Environment.getExternalStorageDirectory(); 
    File dir = new File (sdCard.getAbsolutePath() + "/arcGIS"); 
    dir.mkdir(); 
    File file = new File(sdCard.getAbsolutePath() + "/testfile.txt"); 
    if (!file.exists()) { 
     try { 
      file.createNewFile(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
    } 

    //--- create a tiled layer using the tile package 
    TileCache tileCache = new TileCache(strTpkPath); 
    tiledLayer = new ArcGISTiledLayer(tileCache); 

    //--- set tiled layer as basemap 
    Basemap basemap = new Basemap(tiledLayer); 

    //--- create a map with the basemap 
    map = new ArcGISMap(basemap); 
    mMapView.setMap(map); 

    //--- instantiate geodatabase with name 
    geodatabase = new Geodatabase(strGeoDbPath); 

    //--- load the geodatabase for feature tables 
    geodatabase.loadAsync(); 

    //--- add feature layer from geodatabase to the ArcGISMap 
    geodatabase.addDoneLoadingListener(new Runnable() { 
     @Override 
     public void run() { 
      for (GeodatabaseFeatureTable geoDBTable: geodatabase.getGeodatabaseFeatureTables()) { 
       mMapView.getMap().getOperationalLayers().add(new FeatureLayer(geoDBTable)); 
      } 
     } 
    }); 
} 

我无法找到任何解决方案与此版本的ArcGIS SDK。请帮帮我。

回答

0

有你看了指南编辑: https://developers.arcgis.com/android/latest/guide/editing.htm

和同步: https://developers.arcgis.com/android/latest/guide/sync-offline-edits.htm

还为编辑附件示例代码: https://developers.arcgis.com/android/latest/sample-code/edit-feature-attachments.htm

如果这些不回答任何你的问题,让我知道,我会尽力帮助进一步。

+0

感谢您的回复,但您发送的内容仅仅是一个链接,除了同步链接以外,还有我观看过的所有上述三个链接。同步将在编辑后完成。所以我的关注点是如何编辑下载的地图并在此之后同步。编辑功能是不同的事情。 –

+0

编辑下载的地图是什么意思?您是否尝试修改要素图层? – falldownhill

+0

是的。假设我想在特定点上添加标记,这一点将会同步,并且它还会在下次显示在线服务以及离线服务 –