2012-03-26 123 views
3

的GPS定位我知道如何让手机的当前GPS位置。 我也知道如何在拍照时将GPS位置保存到照片中。 (相机选项三星Galaxy S2)。获取照片

但我怎么能得到了照片(后)的GPS位置? 当我打开电脑上的照片,我可以看到GPS定位数据,但还是不知道如何在Android的后提取它们。那么有人能让我走向好的方向吗? 为了使问题更清楚: 我怎样才能得到一个已经拍摄照片的GPS位置?

感谢不已, Bigflow

回答

18

josnidhin做出这样的回答可能,所以一定要给他的信用太:)

这里,我们去:

import android.media.ExifInterface; 

exif = new ExifInterface(filePath); 
String lat = ExifInterface.TAG_GPS_LATITUDE; 
String lat_data = exif.getAttribute(lat); 

之后,LAT_DATA将是这样的:51/1,58/1,32/1

这是一样的:51,58,32(输入这个在谷歌地图会给坏的结果)

要得到你需要做一些数学的这个GPS坐标,它来:

  1. 计算的总秒数:
    58'32“=(58 * 60 + 32)= 3512 秒。
  2. 小数部分是秒除以3600总数:
    三千六分之三千五百十二=〜0.975556
  3. 添加分数度到整个度以产生最终结果:
    51 + 0.975556 = 51.975556
  4. 如果它是西经坐标,否定结果。 (这是不是这一次)
  5. 答案:51.975556

这也是同样的,当你与TAG_GPS_LONGITUDE

+1

请给出更多的解释,如果这是一个西经坐标,否定结果。 (现在不是)'?我如何确定这一点? – 2016-04-08 14:35:20

+1

@NguyenMinhBinh:你可以得到ExifInterface.TAG_GPS_LATITUDE_REF,这是“S”为南或“N”为北,ExifInterface.TAG_GPS_LONGITUDE_REF的价值,它可以是“W”或“E”以同样的方式。 – 2016-07-01 12:44:31

9

我觉得地理标签是在拍摄照片的EXIF数据。找到一个合适的EXIF数据阅读器,它可以帮助你提取你想要的数据。

+0

谢谢,这个词:“EXIF”就是我一直在寻找:)。 做了我自己的答案,帮助人们多一点点,但感谢把我的好方向。 +1 – Bigflow 2012-03-26 08:56:19