Что такое полноэкранный режим в Android?

Я искал, что такое полноэкранное намерение, но я не мог понять, что это такое. Есть несколько частичных примеров кода, но я редко вижу примеры в видимой форме. Я запутался, когда посмотрел, что означает полноэкранное намерение.

Из того, что я видел, кажется, что появляется панель уведомлений, но не строка состояния. Когда пользователь нажимает на панель уведомлений, она переходит в полноэкранный режим.

Однако я запутался, когда прочитал этот вопрос. FullScreenIntent появляется, только если я очищаю уведомление В этом вопросе говорится, что полноэкранное намерение появляется, когда он очищает панель уведомлений. К чему относится полноэкранное намерение? Видео на YouTube, кажется, говорят, что полноэкранное намерение заключается в том, чтобы открыть панель уведомлений и перейти к полноэкранному действию, щелкнув ее, но когда я прочитал вопрос выше, у меня появилось ощущение, что это нечто отдельное от панели уведомлений.

Что такое полноэкранный режим?


person HeyMate    schedule 25.01.2021    source источник


Ответы (1)


Давайте сначала посмотрим на Android документ

Намерение запустить вместо публикации уведомления в строке состояния. Только для использования с чрезвычайно важными уведомлениями, требующими немедленного внимания пользователя, такими как входящий телефонный звонок или будильник, который пользователь явно установил на определенное время. Если это средство используется для чего-то другого, дайте пользователю возможность отключить его и использовать обычное уведомление, так как это может быть чрезвычайно разрушительным.

Системный пользовательский интерфейс может отображать всплывающее уведомление вместо запуска этого намерения, пока пользователь использует устройство.

и это с примером кода

Вашему приложению может потребоваться отобразить срочное, чувствительное ко времени сообщение, например входящий телефонный звонок или будильник. В этих ситуациях вы можете связать полноэкранное намерение с вашим уведомлением. При вызове уведомления пользователи видят одно из следующего, в зависимости от состояния блокировки устройства:

  • Если устройство пользователя заблокировано, появляется полноэкранная активность, закрывающая экран блокировки.
  • Если устройство пользователя разблокировано, уведомление отображается в расширенной форме, которая включает параметры обработки или отклонения уведомления.

Небольшое пояснение В старые времена Android, если в приложении было что-то срочное, вы могли начать действие прямо из фона. Но в конце концов это устарело, и вам нужно опубликовать уведомление, чтобы взаимодействие с пользователем требовалось для вывода активности на передний план.

Однако уведомления в строке состояния не всегда являются лучшим UX, если это срочные задачи (например, прием входящих вызовов в приложении для набора номера). Так что полноэкранный интент здесь может быть полезен. Это будет работать очень похоже на намерение уведомления в строке состояния, но если устройство пользователя заблокировано, у вас есть возможность отображать уведомление в полноэкранном режиме.

person stinepike    schedule 25.01.2021
comment
Я предполагаю, что терминология, в которой я запутался, была уведомлением в полноэкранном режиме. Я попытался представить панель уведомлений, занимающую весь экран, но не смог придумать реальный пример. Кроме того, как приложениям будильника удается отображать полный экран будильника (с кнопкой остановки, звуком будильника и всем остальным), хотя на самом деле не показывается панель уведомлений? - person HeyMate; 25.01.2021
comment
По второй ссылке вы можете указать активность полноэкранного уведомления. Кроме того, если вы установите полноэкранное уведомление, система будет отображать активность, а не только уведомление. (Хотя похоже, что это не всегда гарантировано). Итак, мое предположение заключается в том, что будильник использует полноэкранное уведомление, определяющее действие с помощью кнопок, так что во время блокировки экрана оно выводится на передний план. (но я могу ошибаться, так как у меня нет большого контекста для их реализации) - person stinepike; 25.01.2021