Ti dico come lo farei io senza l'uso di librerie esterne
codice:
// Imposto l'orario minimo: ore 22:00:00 di oggi
GregorianCalendar oraMin = new GregorianCalendar();
oraMin.set(Calendar.HOUR_OF_DAY, 22);
oraMin.set(Calendar.MINUTE, 0);
oraMin.set(Calendar.SECOND, 0);
long millisMin = oraMin.getTime().getTime();
// Imposto l'orario massimo: ore 04:00:00 di domani
oraMin.add(Calendar.HOUR, 6); // Aggiungo 6 ore all'ora minima
long millisMax = oraMin.getTime().getTime();
// Verifico se una determinata data/ora ricade nell'intervallo
Date dataDaVerificare = ...;
long millis = dataDaVerificare.getTime();
if ((millisMin <= millis) && (millis <= millisMax)) {
// Sì, l'ora è fra le 22:00 e le 04:00
...
}
Ciao.