Tengo que una aplicación de Android en la que necesito convertir la fecha actual a la cantidad de segundos pasados desde 1970.cómo obtener el número de segundos transcurridos desde 1970 para un valor de fecha?
Lo que estoy haciendo actualmente es esto.
Calendar cal = new GregorianCalendar(TimeZone.getTimeZone("GMT"));
cal.set(currentDate.get(Calendar.YEAR), month, currentDate.get(Calendar.DAY_OF_MONTH), 0, 0, 0);
long timesince1970 = cal.getTime().getTime();
Otro problema es que mi aplicación debe ejecutarse en Alemania. De ahí la necesidad de convertir el tiempo a su zona horaria y luego convertirlo a la cantidad de segundos desde 1970.
Lo anterior no me da resultados correctos.
Dado que proviene de 'System' do' currentTimeMillis() '¿varía si un usuario tiene la fecha modificada? –
@CliffBurton: Sí, lo hace. Los teléfonos Android generalmente están configurados para sincronizar automáticamente su tiempo, pero la fecha de regreso puede ser incorrecta. Si necesita tiempo para ser exacto, generalmente necesitará hacer algún tipo de verificación en línea. (N.B .: dado que el tiempo devuelto es UTC, no se ve afectado por el horario de verano ni por las zonas horarias, a menos que se cometa un error) –