[GDAL] [Android]如何设置GDAL_DATA目录路径?

时间:2019-01-24 11:09:12

标签: android gdal

我们正在尝试在android上使用GDAL,但是当我们要使用SpatialRference的ImportFromEPSG函数(错误6)时遇到问题。
我们认为出现此错误是因为我们的GDAL_DATA目录设置为

  

找不到gdal.SetConfigOption(“ GDAL_DATA”,dir.getAbsolutePath()),   或SetConfigOption被忽略

但是我们不知道为什么。目录之前已经过测试并且存在。

这是我们的代码:

File file = getGCSFile();

if (file.exists())
    Log.d("GDAL", "CSV found !!!");

File dir = getGDALDataFile();

if (dir.exists())
    Log.d("GDAL", "GDAL_DATA dir found !!!");

File log = new File(dir,"log");

gdal.SetConfigOption("GDAL_DATA", dir.getAbsolutePath());
gdal.SetConfigOption("CPL_LOG", log.getAbsolutePath());
gdal.SetConfigOption("CPL_DEBUG", "ON");
gdal.SetConfigOption("CPL_LOG_ERRORS", "ON");
gdal.SetConfigOption("CPL_TIMESTAMP ", "ON");
gdal.SetErrorHandler("CPLLoggingErrorHandler");

gdal.AllRegister();
ogr.RegisterAll();

SpatialReference src = new SpatialReference();
SpatialReference tgt = new SpatialReference();

osr.DontUseExceptions();

//WGS 84
int error = src.ImportFromEPSG(4326);
Log.d("GDAL","error " + error);

有人可以帮助我们配置吗?
谢谢

1 个答案:

答案 0 :(得分:0)

这里的 GDAL Android 用户,根据我的经验,我还必须设置 PROJ_LIB 环境变量(或 SetConfigOption)。用于此变量的文件夹是包含 proj.db 文件的文件夹