Boa tarde pessoal, estou trabalhando em um app Android para uma empresa, me pediram para colocar um validador de data, teria que funcionar até a data especificada na codificação, após isso tera que apresentar uma mensagem com instruções de compra, estou tentando utilizando a função GregorianCalendar, mas independente da data que coloco o APP esta iniciando normalmente e não esta apresentando a mensagem de aviso. A chamada do método esta no splash, segue o método abaixo. Desde já muito obrigado.
private void validador(){
//Validação simples para TRIAL
try {
if (new Date(0).after(new GregorianCalendar(2015,11,1).getTime())) { //Define a data de expiração
AlertDialog.Builder ad = new AlertDialog.Builder(this);
ad.setTitle("App Teste");
ad.setMessage("O tempo de avaliação está expirado. entre em contato para adiquirir a versão final.");
ad.setPositiveButton("Contratar", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
Intent i = new Intent(Intent.ACTION_VIEW,
Uri.parse("http://www.teste.com.br"));
startActivity(i);
finish();
}
}).show();
}
} catch (Exception e) { /* handle any exceptions */
return;
}
}
RESOLVIDO -
Coloquei a linha e o problema foi solucionado, estava comparando com date que já foi descontinuado:
if (new GregorianCalendar().after(new GregorianCalendar(2015,11,24)))
Só um detalhe, Nesse tipo de validação é verificado a data no SO. Sendo assim se o usuário alterar a data (para uma data anterior) ele conseguirá utilizar o app sem problemas.
Para uma validação mais efetiva é interessante que seja verificada a data de um servidor em comparação a um parâmetro de dataLimite definido durante a instalação do app.
fica a dica 
Bem colocado Diego_Melo, nunca trabalhei com esse tipo de validação, recomenda algum servidor para fazer a verificação? e como implementar? o servidor é chamado no lugar do GregorianCalendar?
Desde já obrigado
o seu app não se comunica com nenhum server?
Se sim você simplesmente obtém a data desse server.
O App não tem necessidade de se comunicar com um server, mas se for possível a comunicação só para validar a data/hora seria bem interessante.
eu tava pesquisando uma para sobre datas aqui e acabei descobrindo esse site
Ali você consegue informações de data e hora de qualquer lugar do mundo.
É perfeito pro seu caso, pois você não precisa esquentar a cabeça de ter que levantar um server só para isso 
Bom dia Diego, voltei a mexer com o projeto em questão, na verdade pensando sobre a situação que você me indicou creio que não seja viável no meu caso pois o app terá que trabalhar mesmo na ausência de internet, assim a conexão com um servidor externo não vai resolver.
Pensando nisso estou tentando fazer uma validação gravando a data do primeiro acesso em um arquivo texto e assim fazer o controle partindo desse arquivo, só que não estou tendo muito sucesso, ele cria o arquivo em branco.
segue o código abaixo:
public void validadorTeste() throws Exception{
String arquivo = “mobile.dat”;
File f = new File(Environment.getExternalStorageDirectory()+ “/” + arquivo);
FileOutputStream arquivoGravar = new FileOutputStream(f);
BufferedReader br = new BufferedReader(new FileReader(f));
String linha = br.readLine();
if (linha.isEmpty()){
Date dataArquivo = formataData(linha);
Date data = new GregorianCalendar().getTime();
int result = dataArquivo.compareTo(data);
if (result > 1){
AlertDialog.Builder ad = new AlertDialog.Builder(this);
ad.setTitle("Teste");
ad.setMessage("O tempo de avaliação está expirado..");
ad.setPositiveButton("Fechar", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
finish();
}
}).show();
}
return;
}else{
Date data = new GregorianCalendar().getTime();
SimpleDateFormat formataData = new SimpleDateFormat("dd/MM/yyyy");
String conteudoArquivo = formataData.format(data);
arquivoGravar.write(conteudoArquivo.getBytes());
arquivoGravar.flush();
arquivoGravar.close();
}
br.close();
}
Teria que criar o arquivo caso não exista, caso exista verificar se está vazio, caso esteja terá que gravar a data do dia no arquivo. No segundo if que acho que estou meio perdido com o compareTo, pois ali eu faço a leitura do conteúdo do arquivo, converto para date e faço a comparação. Gostaria de ter a quantidade de dias entre as determinadas datas, assim conseguiria limitar o uso da demo ex: para 15 dias.