Обновить
192.97

Android *

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

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

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

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

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.3K
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 мин
Количество просмотров6.9K

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

Читать далее

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

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

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

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

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

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

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

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

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

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

Подробности

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

Когда JavaScript недостаточно: Практика разработки нативных модулей для React Native

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

Если ты пишешь на React Native, но устал от его ограничений (типа NFC, Bluetooth или системных фич), эта статья — твой выход. Мы разберём ключевые аспекты разработки нативных модулей для React Native приложений.

Что внутри:
Зачем это надо — когда JS бессилен, а нативный код спешит на помощь.
Как написать свой модуль** — от наследования до обработки системных плюшек (на примере работы с уведомлениями).
Фишки интеграции — куда складывать готовый код, как регистрировать и вызывать из JS.
Готовый пример — бери и используй (или переделывай под свои нужды).

Для кого:
Для тех, кто уже дружит с RN и Kotlin/Java, но хочет больше власти над устройством.

Что получишь:
Рабочий код (не просто "Hello, World!"),
Четкие шаги без воды,
Понимание, как лезть в другие системные штуки.

Итог:
Нативные модули — это мощный инструмент, который делает ваш гибридный код по-настоящему нативным. Хочешь больше, чем предлагает фреймворк? Допиливаешь сам. Статья покажет как.

Читать далее

Paging3 в стиле Compose: секретный DSL, о котором молчат все Android-разработчики

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

В статье описан путь преобразования предложенного экспертами Google способа отображения страничных данных с использованием библиотеки Paging3 и Compose от развесистого сборника if'ов и when'ов, вероломно нарушающего все границы архитектурных слоев, до чистого, лаконичного и затягивающего в себя DSL.

Погрузиться в магию

Compose Multiplatform 1.8.0: поддержка iOS переходит в stable

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

Привет! Меня зовут Максим, я управляющий партнер и руководитель мобильной разработки в KTS.

Мы разрабатываем приложения на KMP еще с 2021 года, а в прошлом году начали экспериментировать с Compose Multiplatform. Вчера JetBrains официально объявили о выходе CMP 1.8.0, c которой поддержка iOS переходит в статус stable. Это важный этап, поскольку теперь CMP можно всерьез рассматривать как основу для кроссплатформенной мобильной разработки.

В этой статье мы познакомимся с обновлением и рассмотрим заявленные фишки, а заодно поговорим о результатах наших опытов с CMP на ‭наших проектах.

Читать далее

Cервисы в Android

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

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

Читать далее

Мастерство фокусов на Compose

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

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

Читать далее