Обновить
251.01

Android *

Пишем под самую популярную мобильную ОС

Сначала показывать
Порог рейтинга
Уровень сложности

Разрешения MAX для Android. Cравниваем с Telegram и WhatsApp*

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров240K

Всем привет!

Я, на свой страх и риск, решил установить себе MAX и посмотреть, а что же происходит после установки? По итогам моего исследования будет минимум 2 статьи.

Это - первая статья. В ней я сравню разрешения, которые запрашивает приложение MAX для Android с разрешениями, которые запрашивают Telegram и WhatsApp.

Читать далее

Как RecyclerView создает магию анимаций: архитектура ItemAnimator под капотом

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров1.5K

RecyclerView умеет превращать обычные операции с данными в плавные анимации. Когда вы добавляете элемент в список, остальные элементы плавно расступаются. При удалении — схлопываются. Эта магия происходит благодаря ItemAnimator — механизму, который я сегодня разберу до последнего винтика.

В этой статье мы погрузимся в архитектуру системы анимаций RecyclerView, проследим путь от вызова notifyItemInserted() до финальной анимации на экране.

Читать далее

Репрайсеры против покупателей: кто на самом деле управляет ценами на маркетплейсах

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2.5K

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

Кто такой репрайсер и как он лишает вас скидок 🔪

В начале июля я начал тестировать новый функционал мониторинга цен на товары. Добавил как обычный пользователь товары в корзины Озона и Wildberries и начал проверять изменения цен через YoloPrice:

Читать далее

Мобильная разработка за неделю #598 (11 июля — 17 августа)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2K

В этом выпуске создаем тепловые карты и делаем элегантные и настраиваемые подсказки, делаем $100K на iOS-приложении и тратим все на исправление ошибок и выгорание, оцениваем мобильный рынок с Sensor Tower, объясняем, почему разработчики в России не освоили ИИ, ждем «момент BlackBerry» для Apple и многое другое. Заходите!

Читать далее

Заменит ли WSA эмулятор Android Studio?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.7K

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

Кроме того, не стоит забывать, что иногда приложение может быть запущено в режиме изменяемого размера окна. Конечно, мы можем запретить подобное поведение в Manifest, но тогда мы получим не самый удобный опыт использования в desktop mode.

Встроенный в Android Studio эмулятор позволяет создавать resizable эмулятор. Но пользоваться им мне показалось не очень удобным. Кроме того, если вы страдаете от нехватки ОЗУ, пользоваться встроенным эмулятором становиться трудно. В моём случае имеем машину с 8 Гб оперативной памяти на борту, и работа эмулятора сопровождается постоянными фризами и зависаниями.

Однако недавно я нашёл решение — Windows Subsystem For Android (WSA). И несмотря на то, что поддержка проекта совсем скоро прекращается, всё работает довольно стабильно.

Читать далее

Замена YouTube Kids

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров3.3K

Что делать, когда твой ребёнок признает только это приложение? Вот не хочет пользоваться аналогами, и всё тут! Как убрать недостатки в такой ситуации и добавить достоинств? Об этом и поговорим.

Читать далее

TAO Bubbles: элегантные и настраиваемые подсказки для ваших Jetpack Compose приложений

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1K

Каждый Android‑разработчик сталкивается с задачей обучения пользователей новым функциям или помощи в навигации по интерфейсу. Традиционные всплывающие окна или сообщения могут быть навязчивыми. Конечно же есть способ элегантно подсвечивать элементы UI и предоставлять контекстную помощь.
Встречайте TAO Bubbles — легковесную библиотеку для Jetpack Compose, созданную для отображения настраиваемых «пузырей», «подсказок» или «тултипов», которые могут указывать на конкретные UI‑компоненты.TAO Bubbles прекрасно подходит для создания пошаговых руководств, демонстрации новых возможностей или предоставления контекстно‑зависимой справки прямо в вашем приложении.

Читать далее

Android обновление API SDK до 35 версии в сжатые сроки, в большом легаси-проекте

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.8K

Все мы (разработчики Android-приложений), не так давно получили письмо вида:
Редко подобные письма становятся проблемой, однако при определенных условиях - это может существенно потрепать вам нервы.

Костыль-решение

Мобильная разработка за неделю #597 (4 июля — 10 августа)

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров2K

В новом дайджесте распутываем навигацию SwiftUI и переписываем слайдер оплаты на Compose, играем в SPM и делаем свой State Management для Flutter, реализуем «Чёрное зеркало» в реальности, решаем задачи коммивояжера, отикрываем Android для роботов и многое другое. Заходите!

Читать далее

Гиковские «часики»: уникальный гаджет с MIPS-процессором и Android на борту

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров11K

Да, вам не показалось: Android и MIPS можно было подружить! В эпоху, когда ARM и AMD64 правят балом, устройства на иных процессорных архитектурах кажутся диковинкой. Но раньше производители устройств охотнее шли на эксперименты и особенно этим выделялась компания SmartQ. В 2009 году они разработали планшет аж с 3-мя операционными системами на борту, а в 2014 — гиковские Android-часы с очень экономичным и при этом мощным MIPS-чипсетом.

Что внутри у такого необычного гаджета, как аккумулятор на 280мАч и Android уживаются вместе и почему 11-летние часы круче любых современных — читайте в подробной статье!

Читать далее

Kick: Kotlin Inspection & Control Kit — единый модульный инструмент отладки прямо в приложении

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров631

При разработке и тестировании приложений порой требуется заглянуть под капот - проанализировать HTTP-трафик или проверить кэш данных в базе данных. Ранее для этих целей мы использовали Inspektify и Delight SQL Viewer. Но в какой-то момент нам понадобился еще и удобный доступ к логам приложения и тащить ещё одно отдельнее решение не хотелось. Был нужен один инструмент, который объединит всё самое необходимое в одном месте. Так появился Kick — расширяемый модульный набор инструментов, позволяющий разработчикам и тестировщикам легко инспектировать приложение.

Читать далее

Будущее, которое (не) наступило: мобильный VR и AR

Время на прочтение4 мин
Количество просмотров3.1K

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

Читать далее

Swipe to Pay, или Как мы переписали слайдер оплаты на Compose

Уровень сложностиСредний
Время на прочтение20 мин
Количество просмотров3.2K

В Дринкит был анимированный компонент на MotionLayout — слайдер быстрой оплаты в меню. Его и сейчас можно увидеть, когда вы добавляете продукты в корзину. Проведя по нему, вы оплатите заказ, а тапнув — перейдёте к покупкам.

Так почему «был»? У компонента накопилось немало багов, а самому слайдеру понадобился новый функционал. Реализовать его на MotionLayout было сложно, так что мы решили переписать компонент на Compose.

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

Читать далее

Ближайшие события

Android vs iOS: кто победит в гонке ИИ и мобильных технологий?

Время на прочтение4 мин
Количество просмотров1.4K

Бум ИИ заставил техногигантов стремиться быстрее конкурентов внедрять инновации. Apple и Google, владеющие мобильными операционными системами iOS и Android, активно интегрируют собственные решения. Это платформа искусственного интеллекта Apple Intelligence и чат-бот c искусственным интеллектом Gemini. В настоящее время Google успешнее развивает ИИ-технологии. Однако поможет ли Google это преимущество обойти Apple на рынке мобильных устройств, особенно в США, где большинство пользователей предпочитает гаджеты «яблочной корпорации»? Вопрос остается открытым.

Читать далее

Государственный мессенджер по-корейски: контроль, удобство или провал? Национальный мессенджер Южной Кореи, обзор

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров5.8K

KakaoTalk выступает в роли универсальной платформы для рассылки официальных уведомлений от государственных структур Южной Кореи. За этим стоит сложная техническая архитектура, объединяющая бизнес-API, webhook-интеграции и масштабируемую серверную инфраструктуру. Всё это позволяет органам власти отправлять различные типы сообщений гражданам - быстро, безопасно и с учётом законодательных требований.

Читать далее

Мобильная разработка за неделю #596 (28 июля — 3 августа)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.2K

В этом выпуске чайник в Metal и работа с телевизионными каналами на Android, результаты опроса разработчиков Stack Overflow 2025 и какие маркетинговые каналы действительно работают, под капотом Android, процессы отладки, нейросеть у себя на компьютере и многое другое. Заходите!

Читать далее

Простая минификация Json тел запросов / ответов с Kotlin Serialization

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.6K

Привет!

Недавно в рамках одного из проектов на стеке KMP, Ktor и Kotlin Serialization мы с командой решили провести эксперимент и определить возможность и целесобразность минификации тел запросов / ответов на Json.

Да, мы знаем про GraphQL, Protobuf и др., но в нашем случае имел место необузданный интерес наколхозить такое решение. И при всей его наивности удалось сократить средний размер итоговых джсонов (после всех внутренних оптимизаций) на 15-20%.

Читать далее

Функциональное программирование в Android. Побочные эффекты и ELM-архитектура

Уровень сложностиСредний
Время на прочтение24 мин
Количество просмотров2K

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

Практиковаться будем не на ViewModel, а на The Elm Architecture — это паттерн управления состоянием, заимствованный из функционального языка Elm. Заодно узнаем об этом паттерне побольше, разобрав суть его ключевых компонентов. В общем, погнали!

Читать далее

Под капотом Android: как создаются, управляются и восстанавливаются процессы приложений в системе

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров6.6K

Эта статья родилась из практической задачи — понять, как устроен Android в общем и целом, как он сохраняет и восстанавливает состояния приложения (помимо БД и файлов) при внезапном завершении процесса, как управляет процессами.

Я разберу ключевые системные компоненты (Zygote, SystemServer, AMS, Binder) и процесс восстановления состояния через Bundle.

Привет, Хабр! Я Михаил Богатиков, Android‑разработчик в ПСБ.
На одном из собеседований мне задали вопрос, про восстановление приложения после смерти, на который я не смог ответить. Мне стало интересно и я решил изучить этот вопрос и в результате появилась эта статья.

Читать далее

Работа с телевизионными каналами на Android TV: учимся использовать TIF в 2025. Стартовый гайд для разработчиков

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.5K

Всем привет! Меня зовут Андрей Юрин, я android-разработчик в онлайн-кинотеатре KION. При создании приложения под Android TV у вас наверняка могут возникнуть вопросы: как получить доступ к списку телевизионных каналов и как организовать у себя трансляцию? В этом материале я отвечу на них и расскажу про взаимодействие с телевизором с помощью Android TV Input Framework (TIF), а также получение через него списка доступных каналов. По сути это первый шаг к созданию полноценного TV-приложения.

Читать далее