カメラで撮影した画像にEXIFで位置情報をつけようとした場合、
ExifInterface.TAG_GPS_LATITUDE/TAG_GPS_LONGITUDE に
Stringを入れる、というところまではわかったのですが、そのStringにサクッとGPSの情報を入れても
動きません。
http://www.mailinglistarchive.com/html/android-group-japan@googlegroups.com/2010-05/msg00112.html
で、誰も答えてませんが、正解は
http://developer.android.com/intl/ja/reference/android/media/ExifInterface.html#TAG_GPS_LATITUDE
に
“num1/denom1,num2/denom2,num3/denom3”
とありました。
これは分かりにくい!
具体的には、「北緯38度52分15.56秒」だったら、
「38/1,52/1,1556/100」と入れます。
String latlong2GeoFormat (double latlong) { // doubleからintへ変換 Double _latlong = latlong; int num1 = _latlong.intValue(); double num2d = ((_latlong - (double)num1) * 100); int num2 = (int)num2d; double num3d = ((num2d - (double)num2) * 10000); int num3 = (int)num3d; // フォーマット num1/denom1,num2/denom2,num3,denom3 return String.format("%d/1,%d/1,%d/100", num1, num2, num3); }
こんな感じで。