Это не так уж сложно.Когда пользователь закончит редактирование вашего EditText, прочитайте значение времени и создайте экземпляр AlarmManager с начальным временем, рассчитанным как разница между текущим временем и тем, что пользователь написал в EditText.Лучше использовать TimePicker, чтобы избежать анализа ввода пользователя.Добавьте получателя для AlarmManager, получатель запустит Сервис, который покажет диалог или сделает все, что вы захотите.Вам нужно использовать AlarmManager, потому что, если ваше устройство спит, ничто его не разбудит, кроме системного вызова, такого как AlarmManager.Сообщение @Zortkun со ссылками поможет вам понять, как управлять AlarmManager.