获取照片的gps位置

Big*_*low 3 java gps android photo geolocation

我知道如何获得手机的当前GPS位置.我也知道如何在拍摄时将GPS位置保存到照片中.(相机选项三星galaxy s2).

但是如何才能获得该照片的GPS位置(稍后)?当我在电脑上打开照片时,我可以看到GPS位置数据,但不知道如何在android中提取它们.有人能让我朝着好的方向前进吗?更清楚地提出问题:如何获取已拍摄照片的GPS位置?

谢谢,Bigflow

Big*_*low 19

josnidhin使这个答案成为可能,所以一定要给予他信任:)

开始了:

import android.media.ExifInterface;

exif = new ExifInterface(filePath);
String lat = ExifInterface.TAG_GPS_LATITUDE;
String lat_data = exif.getAttribute(lat);
Run Code Online (Sandbox Code Playgroud)

之后,lat_data将是:51/1,58/1,32/1

这与:51,58,32相同.(在谷歌地图中输入此内容会产生不良结果)

要获得这个gps坐标,你需要做一些数学运算,它来了:

  1. 计算总秒数:
    58'32"=(58*60 + 32)= 3512秒.
  2. 小数部分是总秒数除以3600:
    3512/3600 = ~0.975556
  3. 将小数度加到整度以产生最终结果:
    51 + 0.975556 = 51.975556
  4. 如果是西经度坐标,则否定结果.(现在不是这个时候)
  5. 回答:51.975556

你也一样 TAG_GPS_LONGITUDE


Jos*_*hin 9

我认为地理标记位于拍摄照片的EXIF数据中.找到合适的EXIF数据阅读器,它将帮助您提取所需的数据.