i'm using this code to set Alarm in Android KitKat and lollipop:
AlarmManager am = (AlarmManager)getSystemService(ALARM_SERVICE);
Intent i = new Intent(AlarmService.this, Reciver.class);
PendingIntent pi = PendingIntent.getBroadcast(AlarmService.this, 1201, i, PendingIntent.FLAG_UPDATE_CURRENT);
Calendar c = Calendar.getInstance();
c.set(Calendar.HOUR_OF_DAY, 9);
c.set(Calendar.MINUTE, 0);
c.set(Calendar.SECOND, 0);
am.setExact(AlarmManager.RTC_WAKEUP, c.getTimeInMillis(), pi);
this code is works good on Android KitKat but on Android Lollipop its fires With 10 or 5 minutes delayed.