Hora del reloj Android GMT
Para 2016 el Gobierno turco decidió quedarse GMT + 3 zona horaria para ahorrar luz del día, pero en android:
Calendar calendar = Calendar.getInstance(); TimeZone tz = TimeZone.getTimeZone("UTC"); calendar.setTimeInMillis(timestamp * 1000); Date currentTimeZone = (Date) calendar.getTime(); calendar.add(Calendar.MILLISECOND, tz.getOffset(calendar.getTimeInMillis()));
Así que el problema es;
está mostrando GMT + 3 para la fecha antes de noviembre:
Mié Oct 26 18:00:00 GMT + 03: 00 2016
pero para después de noviembre:
Lun Noviembre 07 20:00:00 GMT + 02: 00 2016
- SoundPool de Android tartamudea, retrasa, a veces no juega en absoluto
- ¿Cómo se puede comprobar el permiso en tiempo de ejecución sin lanzar SecurityException?
- ¿Cómo puedo comprobar si el sistema es de 12 o 24 horas?
- ¿Cuáles son los valores predeterminados para los tiempos de espera de conexión y socket en DefaultHttpClient en Android?
- Android - los cálculos con el tiempo transcurrido en el cronómetro
que debería haber permanecido en GMT + 3 durante todo el año, es que un problema especial para Android lib de TimeZone o estoy haciendo algo mal?
Gracias,
ACTUALIZAR
Aunque he agregado un cheque para los parámetros timezone y gmt,
La situación será un poco caótica para los dispositivos Android que utiliza la zona horaria de Turquía, causa después del 29 de octubre la hora del dispositivo será una hora antes de lo normal, hasta que Android libera una actualización para eso y el usuario aplica eso.
- ¿Es posible ver variables en tiempo de ejecución?
- ¿Cómo obtener la hora actual de Google para Android?
- Cómo obtener el tiempo de computación en NDK
- Android - Obtener el widget del cronómetro
- Android Convertir hora central a hora local
- ¿Cómo cambiar el retraso del hilo de sueño / temporizador en android durante el tiempo de ejecución?
- Problema extraño con los tiempos de espera de conexión y Google Volley
- ¿Cómo puedo obtener el tiempo de "red" (desde el ajuste "Automático" llamado "Usar valores proporcionados por la red"), NO el tiempo en el teléfono?
Vea la nota de liberación de tzdb-database para la versión 2016g:
Release 2016g – 2016-09-13 08:56:38 -0700
Cambios en los sellos de tiempo futuros
Turkey switched from EET/EEST (+02/+03) to permanent +03, effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather than an invented abbreviation for the new time.
Obviamente, su dispositivo Android todavía utiliza una versión anticuada de zona horaria. En realidad, tiene las siguientes opciones para continuar:
- Espera por una nueva versión de Android (no es atractiva, no se recomienda).
- Utilice otra biblioteca externa como Joda-Time-Android o mi biblioteca Time4A que ya utilizan 2016h ( Threeten-ABP todavía está detrás, en realidad en 2016e).
- O escriba su propio hack usando compensaciones fijas para Turquía, por ejemplo
TimeZone.getTimeZone("GMT+03")
- AutoCompleteTextView – Mostrar sugerencias después de la selección
- ¿Ajustar el tamaño del texto de WebView?