Android DayNight MODE_NIGHT_AUTO против MODE_NIGHT_FOLLOW_SYSTEM

Я читал эту статью: https://medium.com/@chrisbanes/appcompat-v23-2-daynight-d10f90c83e94. Упоминается тема DayNight, а затем:

Затем вам нужно включить функцию в вашем приложении. Вы делаете это, вызывая AppCompatDelegate.setDefaultNightMode(), который принимает одно из четырех значений:

  • MODE_NIGHT_NO. Всегда используйте дневную (светлую) тему.
  • MODE_NIGHT_YES. Всегда используйте ночные (темные) темы.
  • MODE_NIGHT_AUTO. Изменения между днем ​​/ ночью в зависимости от времени суток.
  • MODE_NIGHT_FOLLOW_SYSTEM (по умолчанию). Этот параметр следует настройке системы, которая по сути является MODE_NIGHT_NO на момент написания

Сценарий прост: приложение автоматически переключает ночной режим без настроек в приложении.

  1. Буду ли я использовать MODE_NIGHT_AUTO или MODE_NIGHT_FOLLOW_SYSTEM?
  2. Как они сравниваются в разных версиях Android?
  3. Каковы преимущества и недостатки обоих из них (я могу думать о проблемах согласованности между приложениями...)?

1 ответ

Решение

Я думаю, что хороший ответ:

Преимущество

MODE_NIGHT_NO, MODE_NIGHT_YES, MODE_NIGHT_AUTO

всегда будет игнорировать настройки пользователя / устройства. Вы можете включить nigthmode в своем приложении, в то время как nigthmode полностью отключен пользователем на устройстве.

Преимущество

MODE_NIGHT_FOLLOW_SYSTEM

может быть эквивалентно MODE_NIGHT_NO, MODE_NIGHT_YES, MODE_NIGHT_AUTO, выбору пользователя для всех приложений пользователем на устройстве.

Другие вопросы по тегам