4
respostas

sincronização envolvendo datas

Olá. Eu fiz uma outra aplicação que possui atributo do tipo Date e estou tendo problemas de sincronização envolvendo datas, o servidor sempre retorna para a aplicação android uma data com um dia de atraso.

4 respostas

Oi Edilva, tudo bem?

Provavelmente o problema está na configuração de timezone do servidor. Você está desenvolvendo o servidor em qual ambiente? Cada linguagem vai ter uma maneira diferente para configurar.

[]s

Java.

Então dá pra tentar o exemplo que o pessoal comentou no Guj. Um rapaz fez a seguinte amostra que aparentemente funcionou:

import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.TimeZone;

public class Teste {

    public static void main(String[] args) {

        TimeZone tz = TimeZone.getTimeZone("America/Sao_Paulo");
        TimeZone.setDefault(tz);
        Calendar ca = GregorianCalendar.getInstance(tz);

        System.out.println (ca.getTime());
    }

}

Alex, na verdade o que estava acontecendo era que a aplicação android enviava o objeto que possui atributos do tipo Date, quando chegava no servidor a data era salva com um dia de atraso, e quando o servidor retornava o objeto para a sincronização no app android a data era salva com mais um dia de atraso. Por exemplo, a data salva no app android é 10/10/2019, no servidor ficava 09/10/2019, e o servidor retornava para o app android a data 08/10/2019. Na aplicação servidor eu coloquei a seguinte linha de código: "TimeZone.setDefault(TimeZone.getTimeZone("America/Sao_Paulo"));" . Dessa forma a data chegava certa no servidor, mas quando o servidor envia para o android, ainda continua enviando a data com um dia de atraso.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software