Android:Poner GPSTimeStamp en jpg EXIF
Pregunta
Estoy tratando de configurar el "GPSTimeStamp" en las etiquetas exif de un jpg a través de android.La documentación es muy escasa en este:
http://developer.android.com/reference/android/media/ExifInterface.html#TAG_GPS_TIMESTAMP
Tipo de Cadena.El Valor De La Constante:"GPSTimeStamp".Pero, ¿qué es el formato exacto?
Busca aquí:http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/GPS.html
GPSTimeStamp:rational64u[3] (cuando la escritura, la fecha en que se despojó de si está presente, y el tiempo es ajustado a UTC, si incluye una zona horaria)
Así que tengo mucho valor a 3 células de la matriz?Yo no estoy seguro, lo que para poner en.He obtenido una "hora UTC de esta revisión, en milisegundos desde el 1 de enero de 1970." a través de la ubicación.gettime().
http://developer.android.com/reference/android/location/Location.html#getTime%28%29
Si escribo el tiempo de valor como una cadena en la marca de hora y comprobar las etiquetas exif, a través de "exif" en Linux, me sale el error "denominador de lo previsto".Todos los experimentos con hh:mm:ss, o en otros formatos, han fracasado.Siendo un poco perdido aquí.
Solución
Formato adecuado para GPSTimeStamp
Atributo para el tiempo de muestra 14:22:32
es
"14/1,22/1,32/1"
Puede usar el siguiente código:
Location location = ...; // TODO - Set location properly.
long locationTome = location.getTime();
ExifInterface imageExif = new ExifInterface("absolute_path_to_image");
Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(locationTome);
int hourOfDay = calendar.get(Calendar.HOUR_OF_DAY);
int minutes = calendar.get(Calendar.MINUTE);
int seconds = calendar.get(Calendar.SECOND);
String exifGPSTimestamp = hourOfDay + "/1," + minutes + "/1," + seconds + "/1";
imageExif.setAttribute("GPSTimeStamp", exifGPSTimestamp);
imageExif.saveAttributes();
Tiene un formato similar al GPSLatitude
y GPSLongitude
atributos. Una explicación útil para dicho formato también podría encontrarse aquí: http://www.ridgesolutions.ie/index.php/2015/03/05/geotag-exif-gps-latitude-field-format/