Использование флагов - правильный способ сделать это, использование диспетчера питания - неправильное.
Ваши запросы звучат для меня противоречиво: вы говорите, что хотите, чтобы действие появилось в верхней части экрана блокировки (вмы не делаем этого, мы скрываем экран блокировки, чтобы можно было увидеть активность), и в то же время вы хотите, чтобы пользователь сначала разблокировал устройство.
Если вы думаете, что хотитепользователь увидит уведомление, прежде чем разблокировать устройство, чтобы увидеть вашу активность ... Я действительно думаю, что вы этого не хотите.Уведомление очень маленькое (в строке состояния вверху), а следующее, отображаемое при публикации, очень преходящее.Это не будет хорошим опытом для кого-то, кто слышал, как его телефон гудит или гудит, и вытаскивает его, чтобы посмотреть, что происходит.
Вы должны использовать любую комбинацию флагов окна, которая имеет смысл для вашегоприложение.Вы можете получить практически любое разумное поведение между различными их комбинациями.Они используются для будильника, интерфейса входящего вызова и т. Д.