0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Android регулировка яркости виджет

Экран

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

Настройки — Экран

Чтобы показать окно Экран из системного приложения Настройки:

Размеры экрана и его ориентация (Старый и новый способ)

Чтобы узнать размеры экрана и его ориентацию из запущенного приложения, можно воспользоваться встроенными классами Android.

Данный способ был опубликован в те времена, когда у меня был Android 2.3. Читатели подсказали, что теперь методы считаются устаревшими (API 13 и выше). Пришлось переписывать код. Впрочем, спустя некоторое время и этот код стал считаться устаревшим.

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

Плотность экрана, масштабирование шрифта и др.

Существует класс DisplayMetrics, также имеющий в своём составе свойства для экрана. Пример также пришлось переписывать после выхода Android 11 (API 30), который теперь тоже устаревший:

Вот ещё несколько способов определения размеров:

Такой же код, но с использованием дополнительной константы SCREENLAYOUT_SIZE_MASK:

На Kotlin в виде отдельной функции.

Заглянув в документацию, обнаружил, что можно обойтись без собственных констант. Они уже есть в Android. Оформил в виде отдельного метода.

Получить текущее значение яркости экрана

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

Установить яркость экрана

Если можно получить значение текущей яркости экрана, значит можно и установить яркость. Для начала нужно установить разрешение на изменение настроек в манифесте:

Для настройки яркости нужно использовать параметр System.SCREEN_BRIGHTNESS. Добавим на форму кнопку, метку и ползунок. Код для установки яркости:

Проверил старый пример времён Android 2.2 на эмуляторе с Android 10. Правила ужесточились. Теперь разрешение на изменение системных настроек выдаются только системным программам. Пока ещё есть лазейка, которой и воспользуемся. Новый пример написан на Kotlin. Добавим в манифест немного модифицированное разрешение.

Далее программа должна проверить возможность изменять системные настройки через метод canWrite(). Если такая возможность есть, то запрашиваем разрешение. Появится специальное окно, в котором пользователь должен подтвердить своё решение через переключатель. После этого нужно заново запустить программу, чтобы ползунок стал доступен. Теперь можете менять настройки.

Настраиваем яркость экрана в своём приложении

Существует возможность переопределить яркость экрана в пределах своего приложения. Я не смог придумать, где можно найти практическое применение, но вдруг вам пригодится. Для управления яркостью экрана воспользуемся элементом SeekBar.

За яркость экрана отвечает свойство LayoutParams.screenBrightness:

Яркость экрана

Интересно, что когда выводил ползунок в значение 0, то эмулятор зависал с экраном блокировки. Вам следует учесть эту ситуацию и добавить условие:

Опять столкнулся с проблемой. Пример работал на старых устройствах, а на некоторых устройства не работает. Но за эти годы мне ни разу не пришлось использовать этот способ, поэтому даже не стал искать причину. И кстати, ошибка со значением 0 уже не возникает (возможно из-за того, что сам пример не работает как раньше).

Читайте так же:
При синхронизации с другой медиатекой itunes

Определение поддерживаемых экранных размеров в манифесте

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

В данном примере приводится поддержка нормальных и больших экранов. Маленьким экраном можно назвать любой дисплей с разрешением меньше, чем HVGA. Под большим экраном подразумевается такой, который значительно больше, чем у смартфона (например, у планшетов). Экран нормальных размеров имеет большинство смартфонов.

Атрибут anyDensity говорит о том, каким образом ваше приложение будет масштабироваться при отображении на устройствах с разной плотностью пикселов. Если вы учитываете это свойство экрана в своем интерфейсе, установите этому атрибуту значение true. При значении false Android будет использовать режим совместимости, пытаясь корректно масштабировать пользовательский интерфейс приложения. Как правило, это снижает качество изображения и приводит к артефактам при масштабировании. Для приложений, собранных с помощью SDK с API level 4 и выше, этот атрибут по умолчанию имеет значение true.

Размеры картинок для фона экрана

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

res/drawable-ldpi — 240×320
res/drawable-mdpi — 320×480
res/drawable-hdpi — 480×800
res/drawable-xhdpi — 640×960
res/drawable-xxhdpi — 960×1440
res/drawable-tvdpi — 1.33 * mdpi

Автоматически затемнять экран в определенное время?

Просыпаться по утрам на очень ярком экране не весело. Я предпочел бы, чтобы экран просвечивал в моей темной спальне, когда я просыпаюсь. Хотя я мог вручную изменить яркость перед сном и поменять ее, когда встану, это слишком беспокоит.

Как я могу автоматизировать изменение яркости экрана в зависимости от времени суток?

Если вы не возражаете заплатить несколько долларов, я настоятельно рекомендую Tasker . Эта утилита автоматизации позволяет вам настроить множество встроенных (и некоторых сторонних приложений) действий Android на основе различных параметров, включая время суток.

В Tasker вам нужно будет создать 2 отдельных профиля, а к каждому добавить 2 действия. 1-е действие будет одинаковым в обоих профилях — отключение автояркости. Второй будет аналогичным — действие по изменению яркости дисплея, основанное на времени, с различиями между временем суток и уровнем яркости.

  1. Запустите Tasker и нажмите + кнопку в нижней части главного экрана, чтобы создать новый профиль. Дайте ему описательное имя, например «Яркость вниз».
  2. Выберите контекст «Время» в представленном меню.
  3. Для опции «От:» выберите время суток, когда вы хотите уменьшить яркость.
  4. Снимите флажок «Кому:» и нажмите зеленую кнопку «Принять».
  5. В диалоговом окне «Выбор задачи» нажмите кнопку «Новая задача», назовите ее «Низкая яркость экрана» и нажмите кнопку «Принять».
  6. Нажмите кнопку «+», чтобы добавить действие, выберите категорию «Показать», выберите действие «Автояркость», выберите опцию «Выкл.» В раскрывающемся списке «Установить» и нажмите зеленую кнопку «Принять».
  7. Нажмите кнопку «+», чтобы добавить другое действие, выберите категорию «Отображение», выберите действие «Яркость экрана», установите желаемый низкий уровень (20 — самый низкий рекомендуемый параметр), убедитесь, что «Игнорировать текущий уровень» и «Немедленно» Параметры эффекта »отмечены, и нажмите зеленую кнопку« Принять ».
  8. Нажмите зеленую кнопку «Принять» на экране «Изменить задачу / . ».
  9. На главном экране один раз нажмите на профиль «Яркость вниз», затем нажмите на его гаечный ключ и выберите опцию «Клонировать».
  10. Нажмите на недавно клонированный профиль, нажмите его гаечный ключ, выберите параметр «Переименовать» и назовите его «Brightness Up».
  11. Нажмите на значок часов, выберите опцию «Изменить», измените время «С:» на время суток, когда вы хотите увеличить яркость, и нажмите зеленую кнопку «Принять».
  12. Теперь нажмите на само задание (имя, которое вы дали на шаге 5), выберите параметр «Переименовать», назовите его «Увеличить яркость экрана» и нажмите зеленую кнопку «Принять».
  13. Нажмите на задачу еще раз и выберите опцию «Изменить».
  14. Нажмите на действие «Яркость экрана», установите более высокий уровень для уровня и нажмите зеленую кнопку «Принять».
  15. Нажмите зеленую кнопку «Принять» на экране «Изменить задачу / . ».
  16. Убедитесь, что на главном экране кнопка в правом нижнем углу имеет значение «Вкл.», И закройте приложение Tasker.
Читайте так же:
Как синхронизировать все программы в itunes

Теперь вы должны быть готовы.

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

Если у вас есть виджет Power Bar на домашнем экране (это один из встроенных виджетов Android начиная с Donut), просто нажимайте крайний правый значок яркости, пока он не покажет «A» для автоматической яркости.

Либо перейдите в Настройки -> Дисплей -> Яркость и отметьте опцию «Автоматическая яркость».

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

Он может изменять настройки яркости в зависимости от триггеров, таких как время суток или от того, подключены ли вы к вашему домашнему Wi-Fi. Платная версия позволяет объединять несколько триггеров в составные правила с использованием логической логики AND / OR.

Еще 6 полезных приложений для Android

Время от времени я достаю из ящика BlackBerry KEYone и загружаю на него новые приложения, чтобы посмотреть, как развивается софт на Android. Иногда это происходит, когда на тестирование попадает новый смартфон — например, последний раз это был Huawei P20.

Underburn

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

Однако такая регулировка яркости экрана не учитывает визуальный контраст объектов на экране. Например, вы решаете прочитать перед сном увлекательный лонгрид. Открываете закладку в браузере, включаете режим чтения, — там темный фон, — как вдруг в тексте возникает белое изображение и выжигает глаза.

Читайте так же:
Не могу синхронизировать айфон с айтюнс ошибка 54

Казалось бы: яркость экрана одинаковая! Но белое изображение напрягает глаза на контрасте с черным фоном. Особенно на OLED-экранах. В этом случае было бы полезно понизить яркость — но тогда уже другие, более темные элементы интерфейса станут плохо видны на чёрном фоне. И снова надо напрягать глаза. 1

Underburn — программа, которая регулирует яркость в зависимости от контента на экране. Для этого она снимает скриншоты каждые две секунды и анализирует их цветовой профиль. Не пугайтесь: программа почти не влияет на энергопотребление смартфона (может, съест 1–3% за сутки), а скриншоты снимает в формате «трансляции» экрана, поэтому ОС не засоряет память и не достает пользователя всплывающими окнами.

Underburn

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

Однако, спустя пару дней работы Underburn, я понял, что нужно лезть в детализированные настройки приложения. Для этого есть:

  • Профили по программам. Рекомендую отключить регулировку яркости в YouTube и видеоплеерах, иначе яркость будет постоянно «скакать»;
  • Запуск и приостановка Underburn в зависимости от времени суток;
  • Процентное соотношение светлых и темных областей на экране, по достижению которых программа начинает менять яркость экрана.

Самые продвинутые пользователи Android обрадуются интеграции с Tasker — с ее помощью можно настроить активацию Underburn в зависимости от местоположения.

AirBattery

Беспроводные наушники Apple AirPods нормально работают с Android-смартфонами, но не позволяют проверить заряд каждого наушника или футляра. Эту проблему исправляет AirBattery. Приложение показывает во всплывающем уведомлении всю информацию при открытии крышки, почти как на iPhone. «Почти», потому что заряд аккумулятора отображается не так точно — он обновляется раз в 5%. Ну и дополнительные функции, вроде чипа W1, тоже не будут работать.

Taskbar

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

Taskbar

В настройках программы можно изменить внешний вид иконок, окон и виджетов, а также включить режим работы Freeform. Он запускает приложения из Taskbar в окнах, как в Windows или macOS — думаю, эта опция пригодится владельцам планшетов и смартфонов с большими экранами, однако сам я не нашёл ей применения.

Lockdown

Если вы хотите моментально заблокировать смартфон и отключить авторизацию по скану лица или пальца — приложение Lockdown для вас. Оно очень простое и ничего больше не умеет. Для удобства можно разместить ярлык Lockdown в «шторке» с переключателями, чтобы не искать его в меню или на рабочих столах.

Adapticons

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

Вариантов по настройке внешнего вида иконок много. Можно менять масштаб, цвет и угол наклона каждой иконки; цвет и размер маски; добавлять длинную тень и попиксельно сдвигать иконку влево, вправо, вверх или вниз. Также Adapticons позволяет загрузить арт из сторонних наборов иконок.

Читайте так же:
Как синхронизировать контакты старый айфон и новый

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

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

Shortcutter

«Шторка» — пожалуй, главная сильная сторона интерфейса Android. Пару лет назад разработчики приложений получили возможность добавлять туда сторонние переключатели, однако до сих пор эту функцию реализуют далеко не все программы.

Shortcutter позволяет разместить в «шторке» десятки переключателей. Я облюбовал всплывающий калькулятор, быстрое создание напоминаний и событий в календаре, отображение местоположения, редактор буфера обмена, таймер и секундомер. Очень удобно — и не нужно запускать сторонние программы.

Можно создавать и свои собственные переключатели, но в бесплатной версии Shortcutter их количество ограничено двумя штуками. Помимо этого, бесплатная версия приложения ограничена в ряде других возможностей и напоминает о покупке каждые 50 нажатий на переключатели.

Shortcutter

Для активации всех возможных функций и типов переключателей, приготовьтесь предоставить Shortcutter доступ к:

  1. Истории использования;
  2. Системным настройкам;
  3. Наложению поверх других окон;
  4. Специальным возможностям ОС;
  5. Функциям администратора устройства;
  6. Гепозиции;
  7. Всплывающим уведомлениям;
  8. Режиму «Не беспокоить».

Для ряда функций, вроде тех, которые используют динамический дисплей или цветовые профили экрана, придётся подключить смартфон к компьютеру, скачать пакет ADB и ввести в консоли команду.

Как бонус, Shortcutter позволяет разместить на границе экрана полосу с рядом приложений и ярлыков — нечто похожее на Taskbar. Сразу скажу, я этой функцией не пользовался.

3 способа исправить экран телефона слишком темным для чтения на Android

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

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

Способы исправить экран телефона слишком темным для чтения

1. Встроенные функции, такие как адаптивная яркость.

Google представила функцию адаптивной яркости в Android Pie. Так что теперь он поставляется с большинством последних телефонов Android, особенно с теми, которые имеют оригинальный пользовательский интерфейс.

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

Вот как будут работать адаптивная яркость и другие подобные функции:

  1. Откройте настройки на своем телефоне и перейдите в «Дисплей».
  2. На следующей странице вы увидите функцию «Адаптивная яркость», коснитесь ее.
  3. Включите переключатель рядом с Adaptive Brightness, чтобы включить эту функцию.
Читайте так же:
Синхронизировала песню на айфон ее нет в звуках

Теперь эта функция автоматически регулирует яркость экрана вашего телефона в соответствии с условиями освещения.

Однако, если у вас нет какой-либо из этих функций в настройках дисплея или вы используете старую версию Android, вы можете выполнить обновление до некоторых сторонних приложений, упомянутых ниже.

2. Приложение LUX Lite

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

Приложение простое и имеет минимум настроек. Он предлагает четыре метода автоматической регулировки яркости:

  • По возрастанию (настраивается по мере увеличения окружающего освещения)
  • Динамический (настраивается при обнаружении значительного изменения освещения)
  • Периодический (подстраивается под индивидуальное расписание)
  • При выходе из спящего режима (настраивается, когда телефон выходит из спящего режима)

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

3. Приложение "Сумерки"

Twilight — это приложение, которое делает что-то похожее на функцию адаптивной яркости. Используя время восхода и захода солнца в качестве индикаторов, это приложение автоматически регулирует яркость экрана. У него есть фильтр яркости, поэтому вы можете регулировать яркость в соответствии с временем восхода и захода солнца.

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

Существует профессиональная версия приложения Twilight, которая включает дополнительные функции, такие как настраиваемое время восхода и заката, настраиваемое время перехода и многое другое.

Бонусный совет: виджет яркости

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

Это легкое приложение размером менее 1 МБ, получившее название «Виджет яркости», не имеет настроек и всего остального. Он просто позволяет вам разместить виджет на главном экране. При касании виджета вы можете выбрать одну из трех настроек яркости: минимальную, среднюю и максимальную. Это все.

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

голоса
Рейтинг статьи
Ссылка на основную публикацию
ВсеИнструменты
Adblock
detector