инициализировать объект AGSGeodatabase с указанием пути к файлу "Файл не найден - PullRequest
0 голосов
/ 15 мая 2018

Я хочу опубликовать этот вопрос в сообществе esri, но мне не удалось войти в него.

Я создал автономную базу геоданных и показываю слои из нее на карту.

Моя проблема, когда я загружаю geoDatabse и показываю, что данные с него работают нормально в первый раз.Но когда я перезагружаю приложение и создаю объект AGSGeodatabase по пути, тогда функция «self.generatedGeodatabase.load» выдает ошибку

Error Domain=com.esri.arcgis.runtime.error Code=14 "File not found" UserInfo={NSLocalizedFailureReason=, NSLocalizedDescription=File not found, Additional Message=}

мой созданный URL-адрес: -

file:///var/mobile/Containers/Data/Application/60CF7AE1-2DE1-4FA0-805A-6140D4829E89/Documents/GeoDatabase/2018-05-134T18:29:01+0530.geodatabase

иЯ создаю объект, как это: -

         if let geoDatabasePath = URL(string: SettingsManager.geoDatabasePath) {
            self.generatedGeodatabase = AGSGeodatabase(fileURL: geoDatabasePath)
            self.displayLayersFromGeodatabase()
        }

и ошибка появляется, когда эта функция выполняется: -

 self.generatedGeodatabase.load(completion: { [weak self] (error:Error?) -> Void in
        if let error = error {
            print(error)
        }
})

1 Ответ

0 голосов
/ 01 июня 2018

Ранее я просто сохранял путь к geoDatabse в настройках (при создании geoDatabse), и приложение не обнаруживает geoDatabse в этом месте, когда я перезапускаю приложение, даже если файл там.

Решение этой проблемы Я считаю, что нужно обнаружить путь geoDatabse во время выполнения и создать путь с помощью FileManager. Тогда это работает.

...