Exif только возвращает широту и долготу как целые числа - PullRequest
2 голосов
/ 28 апреля 2011

Через свое приложение я загружаю изображения в базу данных. С изображениями, которые я хочу запечатлеть в месте, где изображение было снято с использованием данных exif. Когда я проводил тестирование на своем телефоне, широковещательная загрузка осуществлялась только на округленное положительное число.

Когда я ожидаю, что местоположение Lat = 52.4 и lon = -1.9, я получаю lat = 52 и lon 1

Вот мой код; lat и lon оба являются String:

ExifInterface exif = new ExifInterface(mainMenu.filename);    
lat = exif.getAttribute(ExifInterface.TAG_GPS_LATITUDE);
lon = exif.getAttribute(ExifInterface.TAG_GPS_LONGITUDE);

В моей базе данных для хранения значений lat и lon указаны значения типа double, и я также попытался использовать float.

1 Ответ

4 голосов
/ 28 апреля 2011

Глядя на документацию для ExifInterface , не следует ли вместо этого использовать метод getLatLong (float []) ?

float[] latLong = new float[2];
if (exif.getLatLong(latLong)) {
    // latLong[0] holds the Latitude value now.
    // latLong[1] holds the Longitude value now.
}
else {
    // Latitude and Longitude were not included in the Exif data.
}
...