Обновить
97.61

Android *

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

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

ESP32-S3 BLE Keyboard

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

Идеяустройства возникла у меня давно. Захотелось аппаратного менеджера паролей. Надоело перепечатывать 20-символьные пароли из телефонного KeyPass, а на каждый компьютер, где нужно что‑то вводить, устанешь устанавливать. Посмотрел, что предлагают, посмотрел, что делают. В основном, не понравились размеры. Иногда цена. С другой стороны, телефон с паролями всегда с собой. А тут ещё бесплатный DeepSeek.

TL;DR: Просто история мучений. В конце прошивка для контроллера + Android‑приложение, работает. Хотя и на стадии «концепт».

Читать далее

Две недели кодинга без ноутбука: AR очки и Linux-on-Android

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели21K

Всем привет! Представляю вашему вниманию перевод статьи «Coding without a laptop — Two weeks with AR glasses and Linux‑On‑Android». Перевод сделал человек с помощью мозга, а не LLM.

Под катом будет личный опыт программиста, который отправился в поездку но не хотел брать с собой ноутбук, а вместо этого взял Android и AR‑очки. Из него вы узнаете с какими трудностями он столкнулся выбрав такое решение, и какие плюсы он почерпнул. И самое главное, повторит ли он свой опыт, если выпадет случай?

Приятного чтения

Мобильная разработка за неделю #587 (17 — 25 мая)

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели2.3K
На этой неделе прошла I/O 2025 и главное на ней было посвящено ИИ, но и для Android-разработчиков есть много обновлений — новая навигация Jetpack Navigation 3, новые функции в Android Studio, обновления Google Play и т.д. Кроме этого новые релизы Flutter и Dart, плагин KMP для IntelliJ IDEA и Android Studio, большое обновление DivKit, тестирование без инцидентов в проде и многое другое. Заходите!

Читать дальше →

Развеиваем мифы о Stability в Compose: оптимизации Strong Skipping

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели2.5K

За последнее время Jetpack Compose и его кроссплатформенный собрат Compose Multiplatform прошел большой путь от ранних альфа релизов и скептического отношения комьюнити до статуса главного UI-фреймфорка под Android и production-ready состояния на iOS.

Тем не менее одна из важных тем, касающихся runtime-производительности фреймворка, все еще остается полной темных пятен, и это тема stability. Как ни странно, ведь на эту тему сделано множество статей и докладов. Проблема заключается в том, что стремительное развитие фреймворка очень быстро делает эти статьи, доклады и даже документацию устаревшими, а новые посты на эту тему вторят старым, дальше распространяя ложную информацию о том, как работает рекомпозиция, пропускаемость (skippability) и перезапускаемость (restartability).

Использование LLM для получения актуальной информации не очень поможет. Простой пример - спросим у ChatGPT, будет ли перезапущена Composable функция, если она имеет нестабильные аргументы, и получим неправильный ответ:

Читать далее

Открываем Konfeature, нашу open-source библиотеку для удобной работы с Feature Flags

Время на прочтение8 мин
Охват и читатели1.7K

Привет! Это Саша Таболин — старший android-разработчик в red_mad_robot. Мы создали открытую библиотеку Konfeature для оптимизации работы с Feature Flags и хотим поделиться нашей разработкой.

Читать далее

Google I/O 2025 Keynote: ожидания vs реальность. И первые впечатления, конечно

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

Вот и прошла Google I/O 2025. Не будем ходить вокруг да около — знаем, как вам не терпится узнать обо всех горячих новинках. Вместе с Surf Android Team проанализируем ожидания от Google I/O 2025 Keynote, сравним их с реальностью и расскажем о своих впечатлениях от увиденного. Го погружаться! 

Читать дальше

Google I/O 2025. Что нового в Android

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели2.4K
image

Всем привет! С вами Анна Жаркова, руководитель практики по мобильному направлению из компании Usetech. Прошли 2 дня Google I/O и живых сессий и воркшопов, новинки уже представлены, не все туториалы и плейлисты еще не выложены, но у нас уже есть, что обсудить. Поговорим мы не с AI, хотя про него сегодня тоже будет, а об Android. Все аспекты мы затронуть не сможем, все-таки информации было очень много, а по каждой из новинке можно писать и отдельную статью, и даже доклад. Поэтому рассмотрим наиболее яркие моменты.
Читать дальше →

Vivaldi 7.4 для Android — Сфокусированная гибкость

Время на прочтение2 мин
Охват и читатели753

Vivaldi 7.4 для Android — это мощное усовершенствование вашего повседневного опыта работы с браузером. Каждая деталь даёт вам больше ясности, больше контроля и больше комфорта. Этот релиз содержит значимые улучшения, которые превращают «простой просмотр» в нечто блестящее.

Мы добавили новые умные опции, улучшили ваш опыт работы с браузером и немного обновили внешний вид ваших вкладок — всё для того, чтобы Vivaldi оставался быстрым, персонализированным и приятным в использовании.

Читать далее

Это не шутка: чем «Аврора» уже круче Android

Время на прочтение10 мин
Охват и читатели46K

Разбираемся, в каких сценариях «Аврора» уже превосходит Android: безопасность, кастомизация, импортозамещение — и где системе ещё есть куда расти.

Читать далее

Видим невидимое: контроль качества Android-библиотек через объектив AppTracer Lite SDK

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели999

Привет! Меня зовут Даниил Климчук, я работаю в команде, занимающейся SDK для авторизации через сервисы экосистемы VK. В него входит несколько компонентов, а именно авторизация по протоколу OAuth 2.1, кнопка One Tap для авторизации в один клик, шторка с описанием сценария авторизации и поддержка авторизации через Mail и OK.

Мы усиленно работаем над качеством нашего SDK, и одним из важных аспектов стал контроль работы SDK на устройствах пользователей. Было решено собирать краши и перформанс-метрики. Для этого отлично подходит новый инструмент AppTracer Lite SDK, разработанный в VK. Сейчас он доступен только внутри VK, но если вас заинтересовало решение и вы хотите внедрить его к себе, напишите в телеграм-чат: t.me/tracer_feedback — обсудим такую возможность. 

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

Читать далее

Мечтают ли андроиды о Robolectric? Разбираем фреймворк по косточкам

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели801

Я уверен, вы слышали про Robolectric, но использовали ли хоть раз для UI‑тестирования или screenshot-тестирования? Да, у библиотеки неоднозначная репутация в Android-комьюнити. Возможно, вы будете в восторге, когда её устройство перестанет быть для вас загадкой.

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

Я копнул глубже, упорядочил все свои знания о библиотеке и изложил их под катом.

Читать далее

В ожидании Google I/O 2025

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели887
image

Всем привет! С вами руководитель практики по мобильной разработке ГК Usetech Анна Жаркова. Уже совсем немного осталось до одного из основных IT-событий года Google I/O. Как обычно, мы все в нетерпении узнать, какие же новинки технологий представит нам компания Google, какие тренды ждут нас, и что будет с Android, KMP и Flutter, а также наработками по AI.

В этом году Google выделили 4 основных направления сессий и докладов:
— AI
— Android
— Cloud
— Web.

KMP и Flutter в этом году посвящено меньшее количество сессий, и они выступают подтемами Android и AI секций. Как мы помним, обычно публикуются целые плейлисты образовательных туториалов сверх заявленного, поэтому, возможно, что-нибудь новенькое по Kotlin, KMP и KSP мы все-таки увидим. Особенно с учетом выхода Compose Multiplatform в стабильную фазу.

Чтобы не запутаться, всегда начинайте с сессий «What's new in» (Что нового в <технологии>). В них обычно рассказывают про основные новости технологий и направлений, а также дают сноски на те видео, где вы можете узнать более подробно про интересующий вас аспект.

AI

Уже который год многие считают, сколько раз слово «AI» произносится за мероприятие. В этом году, вероятно, прошлый рекорд будет побит. На Google I/O 2024 представили довольно много инструментов и новинок для практического использования искусственного интеллекта в разработке. Была представлена улучшенная модель Gemini (бывший Bard), различные SDK на ее основе для внедрения «умных функций» в свои приложения, а также «умные» приложения Android от Google с поддержкой генерации различного контента и «пониманием» запросов (Gmail, Google Photo, поиск, Google Meet и т.п).
Читать дальше →

Контракты в Kotlin или как заключить сделку с совестью

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели5.2K

Всем привет, меня зовут Иван, я Android-разработчик и сегодня мы с вами поговорим об контрактах. Я попробую рассказать и показать примеры для работы с API

Читать далее

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

KStorage — единый подход к key-value хранилищам на Kotlin Multiplatform

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

Типобезопасное Key-Value хранилище для Kotlin Multiplatform. Единый API без боли, бойлерплейта и потери рассудка

Прочитать и убрать бойлерплейт из проекта

Мобильная разработка за неделю #586 (12 — 18 мая)

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели1.3K
Новый большой дайджест после праздничного перерыва — архитектурный линтинг и Material 3 Expressive, тёмные уголки обфускации и Compose Multiplatform для iOS, типобезопасная передача результатов, сломанные OTP и открытые конечные точки, UI-дизайн с ChatGPT и многое другое. Заходите!

Читать дальше →

Прячем код по-настоящему: тёмные уголки обфускации R8 и ProGuard

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

Обфускация R8 ProGuard по умолчанию делает ставку на размер, а не на защиту кода. В статье — нестандартные словари, генерация уникальной обфускации на каждую сборку и методы, которые точно усложнят жизнь реверс-инженерам.

Подробности

Типобезопасная передача результатов между экранами в Compose с Jetpack Navigation

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

Приветствую Android-комьюнити! Меня зовут Арсений Шпилевой, я Core-разработчик в команде WB Partners. В этой небольшой статье я расскажу, как мы в проекте решили обеспечить типобезопасность при передаче возвращаемых результатов между родительским и дочерним экранами с применением библиотеки Compose Navigation. Мы рассмотрим механизм, который помогает избежать типичных ошибок и делает код более поддерживаемым.

Читать далее

Мастерство фокусов на Compose (часть 2): как работает запрос фокуса

Уровень сложностиСложный
Время на прочтение18 мин
Охват и читатели1.4K

Привет! Меня зовут Костя, я Android-разработчик в онлайн-кинотеатре PREMIER. В процессе работы над проектом PREMIER для AndroidTV я столкнулся с тем, что в Jetpack Compose механизм фокусов — достаточно сложная и неочевидная тема. А информации в интернете об этом очень мало, особенно о специфичных сценариев вроде ТВ-приложений или устройств без сенсорного ввода.

Поэтому я решил разобрать тему фокусов в Compose максимально подробно, чтобы помочь разработчикам лучше понять этот механизм и избежать типичных ошибок. В первой статье на эту тему мы уже разобрали базовую структуру фокусировки в Compose. Теперь пришло время углубиться в технические детали: что именно происходит, когда вызывается requestFocus(), как Compose выбирает элемент для фокусировки и какие изменения были внесены в Compose 1.8, чтобы улучшить этот процесс.

Если вы работаете с приложениями под Android TV, кастомными компонентами или просто хотите лучше понимать, как работает система фокусов, эта статья для вас.

Читать далее

ML KIT — Современное решение для сканирования в Android приложениях

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели1.8K

ML Kit - это мощный инструмент для работы с камерой в андроид приложениях.

Библиотека от компании Google ML Kit предлагает набор встроенных API, которые могут работать как на самом девайсе, так и в облаке.

ML Kit - это мощный инструмент для работы с камерой в Android и IOS приложениях.

Читать далее

Погружаемся в пуши. Создаём свою альтернативу сервисам рассылки Push

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели4.6K

Всем привет! На связи Вадим, старший разработчик компании STM Labs. Хотите избавиться от ограничений пуш-сервисов и взять пуш-уведомления под полный контроль?

В этой статье мы глубоко погрузимся в процессы работы пуш-уведомлений, рассмотрим пример создания своего транспорта пушей и создадим Flutter-плагин для поддержки
собственного решения.

Читать далее

Вклад авторов