виджет открытых приложений андроид
Виджет открытых приложений андроид
Отличное оптимизированное приложение для андроид с виджетами в HD качестве со стильным индикатором батареи.
Стилизированные виджеты часов и заряда батареи известной спортивной фирмы Nike. Все красиво и с шиком. Выбор внешнего вида часиков огромен и графически все выдержано!
Анимированный виджт погоды для андроид от разработчиков GO Launcher EX. Точный прогноз погоды по всему миру.
Многофункциональный информационный виджет.
Наиболее популярные виджеты для андроид для всех и каждого: контакты, календарь и другие.
Интересная программа для андроид, с её помощью Вы сможете создавать аватары для контактов телефона в стиле Pocoyo.
Шикарный конструктор для андроид устройств с целой кучей уникальных возможностей для изменения вашего рабочего стола под себя.
Панель кнопок, реально работающих, а не открывающих соответствующее приложение. Так, беззвучный режим не открывает окно режимов, а сразу включает его, а уровень заряда уже сразу показывает реальный уровень батареи!
Одно из лучших погодных приложений для устройств на андроид с большим количеством настроек виджетов!
Живые обои с функцией тамагочи. Кормите, растите питомца, а он вам поможет в оповещении нужной вам информации.
Виджет с красивыми и полностью настраиваемыми часами, для вашего рабочего стола.
8 тем виджета батареи для андроид устройств с приятной анимацией.
Красивый, с простым интерфейсом виджет погоды для вашего андроид устройства от разработчика INFOLIFE LLC.
Используйте командную строку с множеством команд, прямо на вашем смартфоне.
Виджет часов для андроид по официальной версии часов, что входят в Jelly Bean (Android 4.2).
Великолепные многофункциональные виджеты часов для андроид устройств от разработчика Interactive Apps.
Красивый виджет часов для андроид с автоматическим обновлением часового пояса/местоположения, погодных условий и информации о батарее.
Коллекция престижных часов на андроид в стиле кристального стекла с большим количеством возможностей!
Красивый и функциональный виджет из прошивки Droid Turbo 2, показывает информацию о текущем времени, погоде и уровне заряда АКБ.
Управляйте свой батареей и следите за её работоспособностью.
Виджеты, лаунчеры и минимализм: 20 способов организовать приложения на экране телефона
Коллекция скриншотов читателей Т—Ж
Мы попросили читателей поделиться скриншотами экранов телефонов и рассказать, как они организуют и выбирают приложения.
Собрали снимки самых структурированных и необычных экранов, которые помогают не теряться среди десятков и сотен программ.
Это комментарии читателей из Сообщества Т—Ж. Собраны в один материал, бережно отредактированы и оформлены по стандартам редакции.
На главном экране только то, чем пользуюсь ежедневно. Это лаунчер для Андроида в стиле «Виндоус 10». Он классный.
У меня шесть экранов. Каждый условно разделен по темам: мусор, мессенджеры, магазины, банки, «Яндекс», игры.
В какой-то момент надоело искать среди кучи одинаковых иконок нужную, написал свой лаунчер. Все приложения отображаются одним списком, неиспользуемые скрываю либо удаляю, поэтому вижу только то, чем пользуюсь регулярно. Ориентируюсь в основном по положению на экране, а текст и цвет помогают не теряться. На соседней странице пара виджетов: погода и календарь — без календаря жить не могу.
Как-то так. Удалось себя приучить сортировать приложения по папкам, чтобы не создавать 15 разных экранов. Но пока не могу привыкнуть к библиотеке приложений на Ай-ос 14.
У меня всего два экрана с приложениями, остальное — через поиск. На главном экране стопка виджетов: календарь, погода и Streaks, который помогает мне отслеживать цели по активности на день и более глобально — привычки. Недавно убрал из закрепа внизу стандартную камеру Айфона и поставил Halide, но пока непривычно.
Одного экрана достаточно, остальное в библиотеке.
На экране пусто, все приложения в меню.
За минимализм. Очень понравился Niagara Launcher.
Все остальные — через меню приложений. Люблю минимализм.
Остальные приложения через поиск, как и контакты.
Вот основной. Второй — экран потребления: «Твич», «Тикток», заказ еды. Третий — экран сервисов: госуслуги, VPN, налоги.
Самый часто используемый экран.
Один экран — много эмодзи.
Я тут доверился Сири. Чаще всего она подставляет нужные приложения. Если вдруг его нет, а такое бывает редко, свайп вниз — и через поиск достаю нужное. Начинал с одного виджета, сейчас их три.
Всю личную инфу свернул в одну строку на виджет, обычно развернуто на длинную ленту.
Какие у всех скучные экраны. Это второй из двух моих: тут каршеринги, карты и банки.
Технологии. Что происходит в мире технологий, какие устройства стоит купить и как выжать максимум из вашего телефона и компьютера
>виджеты, лаунчеры
>на обложке айфон
Не спрашивайте зачем
Эдуард, супер! Один из немногих, на какие приятно смотреть
Эдуард, что зачем? глупый вопрос, чтобы использывать
Андрей, как называется сей чудо лаунчер?
Сильный,
Nova launcher prime
Виджеты KWGT
Иконки Aline Yellow icon pack
Fluid NG для тонкой настройки жестов (вместо нижней панели и вместо стандартных в телефоне)
Сильный, нова лаунчер
Оч люблю разглядывать чужие рабочие столы, всегда было интересно, как люди их организовывают
У меня вот этот экран основной (аполло = реддит, только гораздо удобнее и быстрее оригинального приложения + большое количество виджетов на любой вкус)
А у меня котик. Просто котик.
Самые нужные приложения в баре снизу, а все остальные: провожу по экрану, что открылся поисковик, ввожу первые три буквы названия приложения, запускаю из поисковой выдачи
Ответ на вопрос: приложение с ДМС, вообще не пользуюсь, но спокойнее когда оно под рукой.
Боже, храни Samsung за edge panel — ТОП-10 приложений на каждый день тут. На главном экране только лаконичный виджет погоды + внизу 5 стандартных иконок (звонки, смс, камера, галерея, Chrome). Всё остальное разбито по тематическим папкам в меню приложений.
мой билайн. заглядываю туда раз в месяц, когда надо оплачивать сотовую связь или отследить куда у меня ушло 40 смс после бурной ночи и попытки позвонить бывшему
Интересно узнать что за лаунчер/виджет на телефоне
Денис Лифанов
Тиндер)) но это шутка
Самые важные приложения, плюс два дополнительных часовых пояса для мамы и папы
Вот как организовано у меня. На первом экране чаще всего используемые приложения, на втором реже используемые. В папке «Контент» фитнес-приложения, онлайн-кинотеатры, приложения для обработки фото и видео, игры и реже используемые социальные сети. В папке «Разное» системные приложения типа почты, которые не добавлены в стандартный почтовик, приложения для получения кодов доступа, приложение для Apple Watch, приложения умного дома и т.п. В папке «Сервисы» приложения онлайн-магазинов, бонусных программ и госуслуг. На третьем экране один виджет, этот экран нужен для того, чтобы если я случайно на него попаду, то не увижу экран с библиотекой приложений, которая меня очень раздражает. Расстраивает, что её нельзя скрыть через настройки.
Не крепится скрин. Говорит что фото должно быть до 5 мб
А вообще, у меня сортируются по степени срочности: чем ближе к левому большому пальцу, тем чаще я его запускаю где то в неудобных для долгого поиска условиях. Так в углу у меня сканер перекрестка, раньше был каршеринг, набор скидочных карт, vk.
Так же как и многие приучил себя сортировать по папкам основное. А верхняя часть экрана занята большим виждетов-стопкой с погодой, расписанием и… все.
Второй экран занимает второстепенный хлам, чем иногда пользуюсь. Остальное скрыто в библиотеку. И тоже пользуюсь поиском по свайпу вниз, если нужно найти приложение, посчитать или валюту конвертнуть. К библиотеке не приучусь наверное никогда.
7 крутых виджетов для Android, которые я советую попробовать
Всегда является большой проблемой найти хороший и интересный виджет для смартфона. Из-за этого многие не пользуются очень приятной особенностью Android, которая позволяет размещать виджеты на рабочем столе. Их можно располагать по-разному и так добиваться того, чтобы интерфейс стал еще более удобным. Я долгое время обходился без виджетов, но в последнее время начал пользоваться некоторыми и набрал несколько вариантов, которые мне нравятся. Я знаю, что мое мнение разделяют многие и готов поделиться списком, чтобы каждый попробовал что-то найти для себя и сделать интерфейс своего смартфона еще более интересным.
Виджетов много не бывает.
Виджеты для Android
Действительно, интерфейс современного смартфона хорош и позволяет получать быстрый доступ к приложениям. Впрочем иногда доступ к ним не нужен, если они запущены изначально. Многие приложения дают возможность вынести на рабочий стол небольшие плашки, зачастую произвольного размера, которые отображают самую важную информацию из приложения. Например, нет смысла открывать приложение погоды, если информацию из него можно вынести на такой небольшой прямоугольник и видеть его каждый раз, когда включаешь смартфон.
В вашем смартфоне уже есть виджеты. Для того, чтобы вынести их на рабочий стол, надо просто коснуться в том месте, где нет ярлыков приложений и немного подержать палец. В выпадающем меню выбираем ”виджеты”. Дальше можно будет ознакомиться со списком того, что доступно, коснуться его на какое-то время и вынести на рабочий стол. Все просто.
KWGT Kustom Widget Maker — универсальный виджет
Если вы считаете себя опытным пользователем виджетов, то KWGT это то, что вам надо. С ним вы сможете создавать собственные персональные виджеты с помощью простого редактора.
KWGT Kustom Widget Maker
Некоторые возможности требуют платного доступа, но очень много чего будет бесплатно. В итоге, вы сможете собрать виджет, который будет содержать часы, карты, индикатор заряда батареи, память, музыкальный проигрыватель и многое другое. Вот такой виджетный комбайн получается.
Overdrop — виджет погоды для Android
Виджеты погоды максимально удобны и это то самое, с чего стоит начинать, если вы следите за ее состоянием и вам важно, что будет завтра. Вообще, виджетов погоды в Google Play достаточно много, но именно Overdrop выглядит самым дружелюбным. Он информативен, элегантно оформлен и понятен.
Он будет просто отображаться у вас на рабочем столе и вы не будете запускать приложение. Погода будет перед глазами каждый раз при разблокировке смартфона. Опять же, есть платные функции, но даже бесплатно доступно многое.
Data Counter Widget — Виджет счетчика данных
Другая часть системной информации, которую всегда удобно иметь перед газами, — это объем трафика, которые потребляет ваш телефон. Виджет Счетчик данных может отдельно отображать информацию по сотовой сети и по Wi-Fi.
Data Counter Widget.
Размер текста, цвет и фон могут быть изменены, а нажав на виджет, вы получите более подробную информацию (включая разбивку, какое из ваших приложений использует больше всего данных).
Musicolet — музыкальный виджет
Не поверите, но управлять музыкой тоже намного проще через виджет. Как правило, достаточно просто включить следующую песню или нажать паузу. С этим отлично справится и виджет.
Конечно, можно пользоваться другими способами управления. Например, отображением управления в шторке, но виджет намного приятней. Правда, самым жирным минусом виджета будет то, что он работает только с музыкой, которая сохранена на смартфоне. Потоковое воспроизведение он не поддерживает.
Calendar Widget — виджет календаря
В Календаре Google есть собственный виджет, но виджет Calendar Widget выглядит более интересно. Его дизайн можно очень тонко настраивать и он не перегружает рабочий экран, как это иногда делают другие виджеты календаря.
Единственный минус — это приложение платное.
С правильной комбинацией текста, цветовых акцентов и размера виджета вы можете собрать то, что идеально вписывается в выделенную для этого часть вашего домашнего экрана.
Sectograph — необычный виджет календаря
Sectograph — это еще один виджет календаря, но он не такой банальный, как остальные. Другие могут быть красивыми и понятными, но не один из них не отображает ваш день, разбив его на сектора.
Для наглядности сектора размещены по кругу и показывают все ваши дела на 24 часа. Так вы можете сразу увидеть, что вы должны делать прямо сейчас и что у вас впереди — это прекрасный пример действительно информативного виджета.
Калькуляторы, сканеры и календари из Google Play списывали деньги со счетов пользователей
Google News — лучший новостной виджет
В наше время редко кто посещает страницы изданий для того, чтобы почитать новости. Все новости потребляются ”на ходу”, пролистывая их в ленте Twitter, Instagram или Telegram, где у нас тоже есть свой новостной канал.
У Google News, в котором мы тоже присутствуем, есть свой новостной виджет, который выведет интересные для вас новости непосредственно на рабочий стол. Новости можно будет открыть для более подробного изучения или пролистать дальше, если конкретная новость вам не интересна.
Новости, статьи и анонсы публикаций
Свободное общение и обсуждение материалов
Мобильные технологии развиваются очень стремительно. Сейчас каждому из нас трудно представить жизнь без смартфона, планшета или ноутбука. Если раньше мы обращались к смартфону по особым случаям, то сейчас сложно представить без телефона даже один день. Смартфон заменил нам многие гаджеты, вроде плееров, фотоаппаратов или игровых приставок. Однако можно ли полностью отказаться от бумажных носителей в пользу новых технологий в 2021 году?
Как-то так получилось, что каждую статью о WhatsApp хочется начать с рассказа о том, как она в прошлый раз проштрафилась со своей довольно спорной политикой конфиденциальности. Вот только делать это в очередной раз большого смысла нет. Тем более, что новая функция, хоть и имеет отношение к защите ”личного пространства”, но не так явно, как новая политика, вызвавшая так много споров в начале года. Новая функция больше нацелена на защиту пользователей от других пользователей. С ней вы, например, сможете сделать так, чтобы ваш начальник, отправивший вам задание в выходной день, не мог понять, когда вы были в Сети. Это немного грубый пример, но давайте разберемся более основательно в новой функции мессенджера.
Виджеты на Android. Редкая фича, в которой придется разобраться
Привет, Хабр! Меня зовут Александр Хакимов, я android-разработчик в компании FINCH.
У вас бывало такое, что ваш дизайн был под iOS, а вам приходится адаптировать его под android? Если да, то часто ли ваши дизайнеры используют виджеты? К сожалению, виджет — редкий кейс для многих разработчиков, потому что с ним редко кто работает,
В статье я подробно расскажу как создать виджет, на что стоит обратить внимание и поделюсь своим кейсом.
Создание виджета
Для создания виджета нужно знать:
Особенности компонентов виджета
С этим пунктом знаком любой разработчик, который хоть раз работал с RemoteViews. Если вы из таких, смело переходите к следующему пункту.
RemoteViews предназначен для описания и управления иерархиями Views, которые принадлежат процессу другого приложения. С помощью управления иерархиями можно изменять свойства или вызывать методы, принадлежащие View, которое выступает частью другого приложения. В RemoteViews входит ограниченный набор компонентов стандартной библиотеки компонентов android.widget.
View внутри виджетов работают в отдельном процессе (как правило, это домашний экран), поэтому для изменения UI виджета используется расширение BroadcastReceiver — AppWidgetProvider, работающий в нашем приложении.
Особенности отображения виджета в «сетке» экрана
Each widget must define a minWidth and minHeight, indicating the minimum amount of space it should consume by default. When users add a widget to their Home screen, it will generally occupy more than the minimum width and height you specify. Android Home screens offer users a grid of available spaces into which they can place widgets and icons. This grid can vary by a device; for example, many handsets offer a 4×4 grid, and tablets can offer a larger, 8×7 grid.
Переводя на русский: каждый виджет должен задать свои минимальную ширину и высоту, чтобы обозначить минимальное пространство, которое будет им занято по умолчанию.
Пример настроек виджета при создании в Android Studio
Виджет, который добавили на на Home screen, обычно займет больше места чем минимальные ширина и высота экрана, которые вы задали. Android Home screens предоставляет пользователям сетку доступного пространств, в которых могут быть расположены виджеты и иконки. Эта сетка может отличаться в зависимости от устройства; например, многие телефоны предлагают сетку 4х4, а планшеты могут предложить большие сетки 8х7.
Из этого становится понятно, что сетка устройства может быть какой угодно, а размер ячеек может отличаться, в зависимости от размера сетки. Соответственно, контент виджета должен быть спроектирован с учетом этих особенностей.
Минимальные ширину и высоту виджета для заданного количества столбцов и строк можно вычислить по формуле:
minSideSizeDp = 70 × n − 30, где n —количество строк или столбцов
На текущий момент максимальный минимум сетки, которую вы можете задать это 4х4. Это гарантирует, что ваш виджет будет отображаться на всех девайсах.
Особенности обновления виджета
Так как AppWidgetProvider по своей сути является расширением BroadcastReceiver-а, с ним можно делать все то же самое, что и с обычным BroadcastReceiver. AppWidgetProvider просто парсит соответствующие поля из Intent, полученного в onReceive и вызывает методы перехвата с полученными extras.
Сложность возникла с частотой обновления контента — все дело в разнице внутренней работы виджетов на iOS и Android. Дело в том, что данные на iOS-виджетах обновляются тогда, когда виджет становится виден пользователю. В Android, такого события не существует. Мы не можем узнать, когда пользователь видит виджет.
Для виджетов на Android рекомендуемым способом обновления является обновление по таймеру. Настройки таймера задаются параметром виджета updatePeriodMillis. К сожалению, эта настройка не позволяет обновлять виджет чаще чем раз в 30 минут. Ниже я расскажу об этом подробнее.
Кейс создания виджета
Дальше речь пойдет о кейсе который был у нас в FINCH в крупном лотерейном приложении с приложением «Столото» для участия в государственных лотереях.
Задача приложения – упростить и сделать прозрачным для пользователя выбор лотереи и покупку билета. Поэтому требуемая функциональность виджета довольно проста: показывать пользователю рекомендуемые игры для покупки и по тапу переходить к соответствующей. Список игр определяется на сервере и регулярно обновляется.
В нашем кейсе дизайн виджета предусматривал два состояния:
Как вы могли заметить, еще одной особенностью для авторизованного пользователя является кнопка «обновить», но об этом позже.
Для реализации отображения двух состояний, с учетом дизайна, я использовал RemoteAdapter в виде реализации RemoteViewsService, чтобы генерировать карточки контента.
А теперь немного кода и того, как все работает внутри. Если у вас уже был опыт работы с виджетом, то вы знаете, что любое обновление данных виджета начинается с метода onUpdate:
Пишем апдейт для каждого инстанса нашего виджета.
Пишем реализацию нашего сервиса. В нем нам важно указать, какую реализацию интерфейса RemoteViewsService.RemoteViewsFactory использовать, чтобы генерировать контент.
Фактически это тонкий wrapper над Adapter. Благодаря ему, мы можем связывать наши данные с remote collection view. RemoteViewsFactory предоставляет методы генерации RemoteViews для каждого элемента в наборе данных. У конструктора нет никаких требований — все что я делаю, это передаю в нем контекст.
Далее будет пару слов об основных методах:
При создании адаптера начинаем загружать данные. Здесь спокойно можно выполнять любые тяжелые задачи, в том числе спокойно ходить в сеть блокируя поток.
При вызове команды на обновление данных, так же вызываем updateDataSync()
Внутри updateDataSync тоже все просто. Очищаем текущий список item-ов. Загружаем данные профиля и игры.
Здесь уже поинтереснее
Так как нам важно показывать профиль только авторизованному пользователю, то и информацию профиля нам нужно загружать только в этом случае:
Модель WidgetProfile собирается из разных источников, поэтому логика их получения и её дефолтные значения устроены таким образом, что отрицательное значение кошелька говорит о некорректных данных или проблемах с их получением.
Для бизнес логики отсутствие данных кошелька является критичным, поэтому, в случае некорректного кошелька, модель профиля не будет создана и добавлена в список item-ов.
Метод updateGamesSync() использует getWidgetGamesInteractor и добавляет в список widgetItems набор актуальных для виджета игр.
Прежде чем перейти к генерации карточек, рассмотрим подробнее модель WidgetItem. Она реализована через kotlin sealed class, что делает модель более гибкой, а работу с ней более удобной.
Создаем RemoteViews и определяем их отклик через FillInIntent
Метод setOnClickFillInIntent назначает указанной viewId intent, который будет объединен с родительским PendingIntent для определения поведения при клике на view с этим viewId. Таким образом, мы сможем реагировать на клики пользователей в нашем WidgetProvider.
Ручное обновление виджета
Для нашего виджета было установлено время обновления в полчаса. Можно обновлять его чаще, например, через танцы с WorkManager, но зачем грузить вашу сеть и аккумулятор? Такое поведение на первых этапах разработки казалось адекватным.
Все изменилось когда «бизнес» обратил внимание, что когда пользователь смотрит на виджет, на нем отображаются неактуальные данные: «Вот на моем iPhone, я открываю виджет и там САМЫЕ свежие данные моего профиля».
Ситуация банальна: iOS генерирует новые карточки при КАЖДОМ показе виджетов, ведь для этого у них отведен специальный экран, а Android не имеет подобных событий для виджета в принципе. Пришлось учесть, что некоторые лотереи проводятся раз в 15 минут, поэтому виджет должен давать актуальную информацию – ты хочешь поучаствовать в каком-то тираже, а он уже прошел.
Чтобы выйти из этой неприятной ситуации и как то решить проблему с обновлением данных, мной было предложено и реализовано проверенное временем решение — кнопка «обновить».
Добавляем эту кнопку в макет layout-a со списком и инициализируем её поведение при вызове updateWidget
Первые наработки показали грустную картину: от нажатия на кнопку «обновить» до фактического обновления, могло пройти несколько секунд. Хотя виджет и генерируется нашим приложением, он фактически находится во власти системы и общается с нашим приложением через broadcast-ы.
Т.е. при нажатии на кнопку «обновить» нашего виджета запускается цепочка:
Во-первых, я добавил флаг isWidgetLoading с глобальным доступом через интерактор. Роль этого параметра довольно проста — не показывать кнопку «обновить», пока идет загрузка данных виджета.
Во вторых, процесс загрузки данных в фабрике я разделил на три этапа:
START — начало загрузки. На этом этапе состояние всех вьюшек адаптера и глобального флага загрузки меняется на «загружается».
MIDDLE — этап основной загрузки данных. После их загрузки глобальный флаг загрузки переводится в состояние «загружено», а в адаптере отображаются загруженные данные.
END — конец загрузки. Адаптеру на этом шаге не требуется изменять данные адаптера. Этот шаг нужен чтобы корректно обработать этап обновления вьюшек в WidgetProvider.
Давайте посмотрим подробнее как теперь выглядит обновление кнопки в провайдере:
А теперь посмотрим на то, что происходит в адаптере:
Надеюсь, что статья была для вас полезной. Если у вас был опыт создания виджетов для Android, то расскажите об этом в комментариях.