1

我正在使用 Android 手机拍摄的照片中的 EXIF 数据,通常获取 GPS 数据非常简单,它以简单的 [双纬度,双经度] 格式返回,效果很好。但有时它会给我一些没有意义的数字,例如 [247322, 124390],我猜这是因为它以不同的格式将它们返回给我,但我不确定是什么。

你知道 EXIF GPS 数据返回的不同格式吗?

这是我的代码:

            var gps = GetImageGps(filePath, currentTimeInMillisenconds);
            double latitude = 0;
            double longitude = 0;

            if (gps != null && gps[0] != 0 && gps[1] != 0)
            {
                _gpsLocation = gps;
                latitude = gps[0];
                longitude = gps[1];

                if ((latitude < -90 || latitude > 90) && (longitude < -180 || latitude > 180))
                {
                    //here I will handle another format
                }
            }

谢谢你的帮助!

4

1 回答 1

0

您在 GetImageGps 中使用ExifInterface吗?

尝试这样的事情(确保使用 getLatLong 方法)


ExifInterface exifInterface = new ExifInterface(fileName);
float[] latLng = new float[2];
if (exifInterface .getLatLong(latLng)) { //file has exif latlong info
   //etc, latLng[0] is your latitute value and latLng[1] your longitude value
}

于 2013-07-10T14:42:16.817 回答