Я думаю, что ниже двух строк в css должно быть достаточно, чтобы получить то, что вы хотите.
#footer
{
position: relative ;
bottom: 0;
}
Это сработало для меня.
Я бы рекомендовал вам прочитать о режиме Doze и этой теме . Также вы можете использовать эту lib от Evernote. Это помогает обрабатывать планирование фоновых задач.
Я столкнулся с этой проблемой ранее с моим приложением
Повторяющиеся сигналы тревоги не сработают для api> 23, если телефон находится в режиме ожидания. См. Schedue Повторяющиеся аварийные сигналы
Режим ожидания также блокирует аварийный сигнал.
Что вы можете сделать, это использовать setExact и setExactAndAllowWhileIdle для api> 23 и использовать собственную логику для повторения тревоги.
if (Build.VERSION.SDK_INT >= 23) {
alarmManager.setExactAndAllowWhileIdle(RTC_WAKEUP, calendar.getTimeInMillis(), alarmIntent);
} else {
alarmManager.setExact(RTC_WAKEUP, calendar.getTimeInMillis(), alarmIntent);
}
Снова вызвать тревогу в приемнике или в действии, которое запускается диспетчером тревог.
В вашем случае снова установите будильник в AlarmReceiver на следующий день.