Avisos

Programación y Desarrollo para Android Subforo exclusivo para temas de programación de software para PDAs y desarrollo de aplicaciones, interfaces, etc bajo Android

Respuesta
 
Herramientas
  #1  
Viejo 29/04/13, 21:31:35
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

Resultado distinto en el emulador y en el dispotivo (Clase Calendar)

Hola a todos tengo una duda, estoy haciendo una miniaplicación que dada una fecha posterior a la actual me calcula la diferencia de tiempo. Lo que hago es primero de todo seria esto:

final Calendar c = Calendar.getInstance();
c.set(bundle.getInt("ANO"), bundle.getInt("MES"), bundle.getInt("DIA"), bundle.getInt("HORA"),bundle.getInt("MIN"),0);

con esto lo que hago es hacer un Calendar de la fecha que me dan. luego llamo a la funcion que calcula la diferencia:

void actualizar_hora(Bundle bundle, Calendar c) {
Calendar c1 = Calendar.getInstance();
Calendar aux = Calendar.getInstance();
aux.setTimeInMillis(c.getTimeInMillis() - c1.getTimeInMillis());
ano = aux.get(Calendar.YEAR)-1970;
mes = aux.get(Calendar.MONTH);
dia = aux.get(Calendar.DAY_OF_MONTH)-1;
hora =aux.get(Calendar.HOUR_OF_DAY);
min = aux.get(Calendar.MINUTE);
seg = aux.get(Calendar.SECOND);
}
No se porque al año restandole 1970 funciona perfecto (Esa no es la duda que tengo).
La duda que tengo es que cuando lo ejecuto en el emulador de Android en Eclipse funciona perfecto pero si lo pruebo en el dispositivo móvil me sale una hora de mas. Es decir si son las 21:30 y le digo que me calcule la diferencia entre esa hora y las 21:31 en el emulador me sale que me falta un minuto y en el dispositivo móvil me sale que me falta una hora y un minuto :S, he probado varios casos y a todos me sale una hora mas :S alguien sabe el porque?

Muchas gracias de antemano por la ayuda!
Responder Con Cita


  #2  
Viejo 30/04/13, 09:25:57
Array

[xs_avatar]
providez providez no está en línea
Miembro del foro
· Votos compra/venta: (2)
 
Fecha de registro: may 2009
Mensajes: 210
Modelo de smartphone: Moto G / Motorola Xoom
Tu operador: Pepephone
puede que sea por cosas del horario de verano de gmt+1 y gmt+2...

lee esto http://stackoverflow.com/questions/7...-returning-gmt y depura haciendo pruebas sobre tu dispositivo, a ver si consigues algo.
Responder Con Cita
  #3  
Viejo 30/04/13, 14:41:29
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

Parece ser que tiene que ver con algo del gmt+1... pero no se como hacerlo ya que si miro la hora es la buena pero al hacer la resta no se porque lo tiene en cuenta el +1 ese.. :S alguien sabe como puedo controlarlo o si en la clase calendar hay alguna función que devuelva el gmt?? muchas gracias!!
Responder Con Cita
  #4  
Viejo 30/04/13, 15:51:44
Array

[xs_avatar]
ericguti.90 ericguti.90 no está en línea
Miembro del foro
 
Fecha de registro: mar 2011
Mensajes: 173
Tu operador: Yoigo

Explico lo que he ido viendo... da igual el gmt que ponga siempre me da una hora mas excepto si es gmt0!!!!! alguna idea?? :S
Responder Con Cita
Respuesta

Estás aquí
Regresar   Portal | Indice > Todo sobre Android > Programación y Desarrollo para Android



Hora actual: 04:12:08 (GMT +1)



User Alert System provided by Advanced User Tagging (Lite) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.

Contactar por correo / Contact by mail / 邮件联系 /