- DayNight: настраиваем автоматическую смену темы в android в зависимости от времени суток
- Как использовать Theme.AppCompat.DayNight ?
- Метод setLocalNightMode()
- Как проверить, какой режим может использовать мое приложение?
- Если приложение выглядит странно
- WebView
- Местоположение
- Почему просто не сделать AUTO по умолчанию?
- Можно ли использовать свои собственные ресурсы для темы день / ночь?
- Автоматически менять обои в зависимости от времени суток, погоды, дня недели или месяца на Android устройствах можно с помощью приложения Smart Wallpaper
- Тема для андроид время суток
- Как изменить обои Android в зависимости от времени суток
- от sasza
- Как использовать живые обои
- Живые обои на любой вкус
- Меняйте обои в определенное время
DayNight: настраиваем автоматическую смену темы в android в зависимости от времени суток
О том, как настроить DayNight тему в приложении андроид, которая устанавливает темную или светлую тему оформления вашего приложения на основе времени суток и текущего местоположения
Мы уже писали, что вышла новая библиотека поддержки Android Support Library 23.2. Новая либа добавляет сразу несколько интересных вещей: это и поддержка векторных изображений в android ниже 5.0, и новые элементы материального дизайна, такие как Bottom Sheets.
Одна из фишек — новая тема DayNight с поддержкой автоматического переключения между светлой и темной темой оформления в зависимости от времени суток. Ее то мы сегодня и потестируем.
Об этом смотрите видео, а под видео — подробнее от разработчиков том, как гибко можно настроить работу и ресурсы для темы DayNight.
Theme.AppCompat.DayNight — это переключение между Theme.AppCompat (темной) и Theme.AppCompat.Light (светлой) на основе времени суток. Это имеет много преимуществ для пользователей, особенно если у вас content app . Эта функция работает на API v14 и выше, на младших версиях будет по умолчанию светлая тема.
Как использовать Theme.AppCompat.DayNight ?
Просто унаследуйте вашу тему от одного из вариантов DayNight в файле res/values/styles.xml:
Затем необходимо включить функцию в вашем приложении. Сделайте это путем вызова статического метода AppCompatDelegate.setDefaultNightMode(), который принимает одно из четырех значений:
- MODE_NIGHT_NO. Всегда используется дневная тема (светлая).
- MODE_NIGHT_YES. Всегда используется ночная тема (темная).
- MODE_NIGHT_AUTO. Автоматическое изменение между светлой/темной, в зависимости от времени суток.
- MODE_NIGHT_FOLLOW_SYSTEM (по умолчанию). Это системный параметр, который является по существу MODE_NIGHT_NO на момент написания (подробнее об этом ниже).
Вызов метода static, поэтому его можно вызвать в любое время. Устанавливаемое значение не сохраняется, поэтому вам нужно установить его каждый раз, когда ваше приложение стартует. Рекомендуется устанавливать его в статический блок в классе вашего приложения (если у вас он один), или вашей Activity, так:
Метод setLocalNightMode()
Можно переопределить значение по умолчанию в каждом компоненте путем вызова его AppCompatDelegate setLocalNightMode(). Это удобно, когда вы знаете, что только некоторые компоненты должны использовать функцию DayNight, или для тестирования, чтобы не сидеть и ждать ночи для проверки макета.
Обратите внимание, что этот вызов не заботится о восстановлении, если изменить режим ночь после любого вызова inflate(), он не будет иметь никакого эффекта. В этом случае можно использовать вызов recreate():
Как проверить, какой режим может использовать мое приложение?
Просто проверьте конфигурацию ресурсов:
Если приложение выглядит странно
Например, текст нечитабельный или иконки неправильного цвета.
Поскольку эта функция изменяет тему вашего приложения, вам нужно убедиться, что ваши макеты/стили/графика корректно отображались в светлых и темных условиях.
Возьмите за правило для этих вещей всегда использовать атрибуты темы, по возможности. Вот наиболее важные:
- ?android:attr/textColorPrimary — Цвет текста общего назначения. Будет черным для светлой темы, и белым для темной темы.
- ?attr/colorControlNormal — Цвет значка общего назначения.
WebView
Существует один большой нюанс этой функции: WebViews. Поскольку они не могут использовать атрибуты темы, и вы редко имеете контроль над любым веб-контентом, существует высокая вероятность того, что ваш WebView будет слишком контрастным против динамического оформления приложения. Поэтому проверьте ваше приложение в обоих режимах, чтобы убедиться что оформление не будет раздражать пользователя.
Местоположение
Чтобы иметь возможность рассчитать корректное переключение между днем или ночью, нам нужно знать ваше местоположение. Если ваше приложение уже имеет разрешения для определения местоположения, AppCompat будет попытаться захватить последнее известное местоположение от LocationManager и использовать их для вычисления времени восхода и захода солнца. Однако он не будет просить разрешения от вашего имени.
Если вы не установили эти разрешения (или просто нет последнего известного местоположения), в настоящее время используются некоторые фиксированные значения. Например это 6 утра (начало дня) и 10 вечера (начало ночи), но это может измениться в будущем, по словам разработчиков.
Если вы ориентируетесь на Android SDK версии 23, вы будете использовать разрешения времени выполнения. Можно реализовать в вашем приложении настройку, позволяя пользователю выбрать включение функциональности DayNight. Это хороший способ, чтобы запрашивать разрешения определения местоположения, если требуется высокая точность определения времени восхода/заката.
Почему просто не сделать AUTO по умолчанию?
Существует несколько причин, которые станут понятны после просмотра примерного сценария для использования этого:
- Изменить тему продления от Theme.AppCompat.DayNight.
- Добавить установку в вашем приложении, предоставив пользователю выбор. На этом этапе сохранить настройки (вероятно, в SharedPreference). Вызов setDefaultNightMode () с выбранным значением.
Тогда в следующий раз, когда ваше приложение запускается, прочитать сохраненное значение и вызвать setDefaultNightMode () снова с выбранным значением.
Таким образом, основная причина заключается в том , не желательно, чтобы ваш пользователь обновил приложение, и вдруг обнаружил , что оно меняет цвет случайным образом (для него) на основе времени суток. Кроме того, по умолчанию MODE_NIGHT_FOLLOW_SYSTEM, поэтому если разработчики добавят user-visible setting на платформу в будущем, AppCompat будет автоматически использовать его.
Можно ли использовать свои собственные ресурсы для темы день / ночь?
Да, можно. AppCompat в простых терминах просто позволяет использовать отдельные ресурсы ночного режима в любое время. Они на самом деле были доступны в платформе, начиная с API 8, но использовались только в очень конкретном сценарии: в режиме автомобиля и стыковки.
Источник
Автоматически менять обои в зависимости от времени суток, погоды, дня недели или месяца на Android устройствах можно с помощью приложения Smart Wallpaper
Вы привыкли самостоятельно настраивать внешний вид рабочего стола своего Android смартфона или планшета и хотели бы, чтобы на нем менялись обои в зависимости от текущей ситуации, но популярные живые обои вас не устраивают? Из этой ситуации есть выход.
На помощь вам придет приложение Smart Wallpaper, новая версия которого недавно появилась в Google Play Маркет и которое вы можете скачать оттуда совершенно бесплатно.
Это приложение поможет вам автоматически менять обои на рабочем столе смартфона, планшета и другого Android устройства в зависимости от следующих ситуаций:
• Wi-Fi сеть, к которой вы подключены
• В случайном порядке.
При этом обои будут выбираться из тех изображений, которые отберете лично вы и которые вам больше всего по душе.
Это означает, что вечером вы, например, можете наслаждаться фотографией своего дачного камина, а утром — рассветом на реке, где вы любите порыбачить. Изображения могут меняться когда вы приходите на работу и возвращаетесь домой с неё. В выходные вы также можете поставить соответствующую вашему настроению картинку.
Приложение для своей работы требует наличия на устройстве операционной системы Android версии 4.1 и выше.
Скачать Smart Wallpaper для Android вы можете с этой страницы Play Маркет
Источник
Тема для андроид время суток
Хорошо настраиваемый мультифункциональный виджет для вашего андроид телефона, что еще нужно для счастья!
Виджеты на андроид для планшетных компьютеров с высоким разрешением экрана от лучшего разработчика cloud.tv.
Красочный виджет погоды и часов для андроид от разработчика Pizero Design.
Многофункциональные «прикроватные» часы на вашем андроид устройстве от разработчика Apalon.
Отличные живые обои от разработчика Aqreadd Studios, представляющие скорее анимированный виджет погодных условий для андроид устройств .
Цифровые часы, будильник и фонарик — три удовольствия в одном андроид устройстве!
Виджет заряда батареи и часов с изображением сексуальной девушки.
Animated Weather Widget&Clock
Классические говорящие цифровые часы с будильником от DroidVeda LLP.
Виджет часов для которого мы сами рисуем цифры.
Скачай бесплатно простой секундомер с минимумом функций — просто и надежно!
Более 50 различных тем виджета часов для андроид смартфонов.
Простые часы без лишних деталей и настроек, подойдут для тех кто любит простоту и стиль.
Прозрачный виджет с часами и погодой а также возможностью быстрого запуска выбранных приложений.
Отличное приложение, содержащее в себе набор необходимых виджетов для вашего андроид устройства от разработчика DGAge Studio.
Красивейший будильник для андроид с большим количеством настроек и цветовых тем.
Отличный виджет часов для андроид от разработчика gadget juice, который можно использовать как в дневное, так и в ночное время суток в качестве настольных часов.
Анимированные виджеты погода с показом времени.
Простой виджет часов для андроид с большим количеством визуальных возможностей.
Многофункциональный виждет часов для андроид от разработчика Upper Duper.
Источник
Как изменить обои Android в зависимости от времени суток
от sasza
Смена обоев — один из самых простых способов сохранить свежесть вашего устройства Android. Если вы хотите перейти на новый уровень, вы можете настроить автоматическую смену обоев в течение дня. Мы покажем вам, как его настроить.
Есть несколько способов подойти к этому. Во-первых, вы можете использовать приложение с живыми обоями, которое автоматически меняется в зависимости от времени суток. Другой метод требует дополнительных настроек, но также позволяет использовать определенные изображения. Мы рассмотрим оба варианта ниже.
Как использовать живые обои
Приложения, которые мы используем в этом руководстве, представляют собой живые обои, то есть они динамически меняются, а не просто отображают статичное изображение. Однако, прежде чем мы рассмотрим приложения, давайте узнаем, как установить живые обои.
Этот процесс будет таким же на большинстве телефонов и планшетов Android. Однако он будет выглядеть немного по-разному в зависимости от используемой вами программы запуска домашнего экрана и производителя вашего устройства.
Чтобы начать, нажмите и удерживайте любое пустое место на главном экране Android-устройства.
В контекстном меню нажмите «Стили и обои».
Экран выбора обоев будет выглядеть по-разному в зависимости от программы запуска и производителя устройства, но должен быть раздел «Живые обои».
Выберите приложение для живых обоев, которое хотите использовать.
Откроется предварительный просмотр живых обоев. Если есть параметры конфигурации, нажмите значок шестеренки, чтобы открыть «Настройки», а затем нажмите «Применить» или «Установить обои».
Обычно вы видите возможность установить обои либо только на главном экране, либо на главном экране и экране блокировки.
Живые обои на любой вкус
В магазине Google Play есть ряд приложений с живыми обоями, которые могут меняться в зависимости от времени суток или даже погодных условий. Вот несколько, которые вы можете попробовать:
YoWindow : В этом погодном приложении также есть функция живых обоев. Вы можете выбирать из множества пейзажей, некоторые из которых содержат движение. Погода изменится в зависимости от вашего текущего местоположения.
Лес Живые Обои : Это приложение представляет собой минималистичный лес с горами на заднем плане и погодой в реальном времени. Вы также можете выбрать одну из множества различных тем, соответствующих сезону. Если вы хотите сделать что-то особенное, вы даже можете выбрать цвета для деревьев, земли и гор.
Меняйте обои в определенное время
Перечисленные выше приложения с живыми обоями автоматически меняются в течение дня. Но если вам нужно немного больше контроля, вы можете использовать приложение под названием «Wallpaper Changer».
Он позволяет вам выбирать конкретные обои для использования в определенное время дня. Вы можете использовать это, чтобы менять обои ежедневно, каждое утро и ночь или каждые несколько часов. В нашем примере мы изменим обои четыре раза, чтобы соответствовать времени суток.
Сначала загрузите Обои Смена из магазина Google Play на вашем устройстве Android.
Прежде чем мы установим Wallpaper Changer в качестве живых обоев, мы настроим его так, чтобы он менялся в течение дня.
Для этого откройте приложение на телефоне или планшете, а затем установите флажок рядом с параметром «Менять обои каждые». Коснитесь стрелки раскрывающегося списка и выберите временной интервал, если не хотите вдаваться в подробности. Если вы предпочитаете установить определенное время, коснитесь знака «плюс» (+) в правом нижнем углу вкладки «Изменить».
На карточке «Событие» убедитесь, что выбран переключатель рядом с параметром «Время», а также все семь дней недели. Измените время на 6 утра
Под карточкой «Событие» выберите переключатель «Следующие обои» в разделе «Действие».
Вернитесь на вкладку «Изменить» и снова коснитесь знака «плюс» (+). На этот раз установите время на 11 часов утра, а затем выберите «Следующие обои».
Не стесняйтесь выбирать удобное для вас время. Мы повторяем этот процесс, пока не создадим события для 6, 11, 17 и 21 часов. Все четыре должны иметь «Следующие обои» в качестве действия.
Затем мы выберем изображения, которые будут использоваться в качестве обоев. Перейдите на вкладку «Альбомы» и установите флажок «Альбом по умолчанию».
Коснитесь знака плюса (+) в правом нижнем углу, чтобы добавить изображения в альбом.
Нажмите «Добавить изображение».
Вам будет предложено предоставить приложению доступ к вашим фотографиям, медиафайлам и файлам; нажмите «Разрешить», чтобы продолжить.
Выберите все изображения, которые хотите добавить в альбом. Обратите внимание, что порядок, в котором изображения появляются в этой папке, — это то, как они будут проходить.
После добавления всех изображений нажмите стрелку назад в левом верхнем углу.
Теперь мы готовы установить приложение в качестве живых обоев. Нажмите на оранжевое сообщение вверху.
Откроется экран предварительного просмотра живых обоев. Нажмите «Применить» или «Установить обои».
По умолчанию приложение будет использовать первое изображение в папке. Если это не то, что вы хотите для текущего времени дня, откройте «Альбом по умолчанию» еще раз и выберите соответствующее изображение.
Нажмите «Установить как обои», и порядок изображений будет исправлен.
Это оно! Теперь приложение будет циклически просматривать выбранные вами изображения в указанное вами время.
Источник