我正在尝试使用Android版ArcGIS SDK编辑脱机.geodatabase
文件。我一直在寻找文档,并且找到了使用服务的方式,但是我的应用程序不使用任何服务,仅使用脱机文件。
我正在做的是打开.geodatabase
文件,当打开文件时,它将自动创建两个文件(.geodatabase-shm,.geodatabase-wal)。稍后,当我要编辑与地图单元格有关的信息时,我调用方法:
GeodatabaseFeatureTable.updateFeature(long featureId, Map<String, Object> attributes)
并且文件(.geodatabase-shm,.geodatabase-wal)已更新,但未更新(.geodatabase)。
我需要将.geodatabase文件发送到服务器以供其他用户下载,那么如何将更改应用于此文件?我应该做一些地理数据库事务吗?
最佳答案
文件.geodatabase-shm和.geodatabase-wal是临时文件,更改将在关闭后应用于原始.geodatabase。
因此,该解决方案包括在不再使用地理数据库时(例如在onDestroy方法中)调用方法Geodatabase.close()
。这是方法概述:Geodatabase close method
就我而言,我必须使用其他方法,因为我可能使用的是旧版本的ArcGIS SDK。方法是Geodatabase.dispose()
,您可以在此处查看说明:Geodatabase dispose method
关于android - 如何使用ArcGIS SDK for Android编辑脱机.geodatabase文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52835105/