La mejor manera de comparar fechas en Android

Estoy tratando de comparar una fecha en formato de cadena con la fecha actual. Así es como lo hice (no he probado, pero debería funcionar), pero estoy usando métodos en desuso. ¿Alguna buena sugerencia para una alternativa? Gracias.

PD Realmente odio hacer cosas de fecha en Java. Hay tantas formas de hacer lo mismo, que realmente no estás seguro de cuál es la correcta, de ahí mi pregunta.

String valid_until = "1/1/1990";

Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy");
Date strDate = sdf.parse(valid_until);

int year = strDate.getYear(); // this is deprecated
int month = strDate.getMonth() // this is deprecated
int day = strDate.getDay(); // this is deprecated       

Calendar validDate = Calendar.getInstance();
validDate.set(year, month, day);

Calendar currentDate = Calendar.getInstance();

if (currentDate.after(validDate)) {
    catalog_outdated = 1;
}

Respuestas a la pregunta(13)

Su respuesta a la pregunta