Обновить
256K+

Android *

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

Привет!

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

Мобильная разработка за неделю #595 (21 — 27 июля)

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

В новом дайджесте рассказ последнего UIKit-разработчика и погружение в разработку плагинов для Android Studio, дизайн киты iOS и iPadOS 26 и зачем нужен Navigation 3, автоматизация тестирования, TikTok для роста, ИИ, который удалил производственную базу данных пользователя, и многое другое. Заходите!

Читать далее

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

Необычный гиковский девайс: как китайский стартап сделал планшет с тремя ОС одновременно

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

Пожалуй, все мы с вами любим диковинные гаджеты из 2000-х годов, когда производители всё ещё пытались удивить пользователя некой изюминкой. Таким необычным устройством был и предок современных планшетов — MID SmartQ V7, где за цену в 150$, производитель предлагал неплохое железо, приятный дисплей и целых три предустановленных операционных системы!

Что было «под капотом» у первых планшетов и что умел «дедушка» современного iPad с Android, Ubuntu и Windows CE «на борту» — читайте в сегодняшней подробной статье!

Читать далее

Githab CLI и Github Actions на страже вайб кодинга с мобильными агентами Cursor

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

В этой статье, я расскажу, про опыт работы с агентами Cursor, github actions и великолепный Github Cli. Статья не претендует на истину и является частным практическим опытом.

Вступление

Лето. Время отпусков. Делать не фиг.

Можно залипать в рилсах или сериальчиках на пляже, но зачем, если можно создать что-то прикольное с мобильниого телефона, с помощью агентов. А конкретно, с помощью https://cursor.com/agents (стоит 20 баксов в месяц https://docs.cursor.com/account/pricing или 3к рублей в год, если немного поискать).

Итак, создаем репозиторий (В моем случае github.com/RobotAvi/MoneyGame) или берем готовый. Даем задачу агенту.

Читать далее

PWA и WebView — как сделать ваше веб-приложение доступным в офлайн-режиме

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

Привет! Меня зовут Алексей Егоров. Сегодня поговорим про офлайн-режим в PWA и WebView, без лишней теории и с прицелом на мобильные приложения. В разработке я уже больше трёх лет, большую часть этого времени посвятил WebView и мобильным решениям. В этом материале мы разберём, как работают PWA и WebView в офлайн-режиме, посмотрим на инструменты, которые помогают реализовать такую функциональность, и в завершении я поделюсь примером: какую технологию мы выбрали для календаря и как внедрили офлайн-режим на практике.

Читать далее

Mobile System Design. Проектируем новостную ленту

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

Элементы System Design уже прочно вошли в процесс собеседований. Однако в мобильной разработке довольно часто возникает недопонимание что же все-таки необходимо продемонстрировать чтобы получить заветный офер. В этой статье я разберу один из кейсов, который может встретиться на реальном собеседовании и кроме этого покажу примерный сценарий такого интервью. Данная статья будет интересна мобильным разработчикам, как Android, так и iOS. Сам формат System Design Interview я разбирал в предыдущей статье. Здесь же мы сконцентрируемся на практике.

Итак, задача: спроектировать новостную ленту. 

Читать далее

Погружение в разработку плагинов для Android Studio (часть 1)

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

В одной из прошлых статей было рассказано, как начать разработку собственного плагина для Android Studio (или IntelliJ Idea). В этой статье окунёмся немного глубже и создадим более сложные и, хочется верить, ещё более полезные инструменты для повседневной работы в IDE.

Рассмотрим разработку плагинов для IntelliJ Idea и Android Studio на нескольких нетипичных, но простых и боевых задачах. Будет много полезных ссылок, пояснений и несколько примеров с кодом.

Читать далее

Geely и ECARX, что с вами не так?

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

Периодически читая Хабр, я еще не находил статей, описывающих внутренний мир штатных головных устройств (далее — ГУ) на базе Android, хотя я уверен, что не только мне было бы интересно, как там всё устроено и работает. Речь пойдет про одни из самых популярных авто на нашем рынке: Geely Coolray и частично Geely Tugella.

Эта статья обещает быть длинной с вырезками кода из JADX и не только, добро пожаловать под кат.

Читать далее

Что общего у Silent Hill и сервиса доставки?

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

Когда‑то давным‑давно, аж в далёком 2002 году, мы с другом проходили первую часть Silent Hill на первой PlayStation. В этом месте могли бы быть слова восторга и трепета от атмосферы, саспиенса, сюжета и музыки моего любимого Акиры Ямаоки, но сегодня мой пост не про это.

Полностью игру нам тогда пройти не удалось... И не потому что она была сложная или страшная. Нет‑нет. Потому что там была корявая локализация. Те, кто играл в видео‑игры в конце 90-х и начале 00-х должны помнить «замечательные» переводы от Фаргус с их слоганом‑издевательством «только качественные переводы». И если по сюжету всё было более‑менее понятно, то с головоломками, где важны нюансы, была полная беда. И если на экране был виден текст оригинального письма, записки, таблички, то знание английского спасало (хотя тогда он был у меня так себе). А поменять язык полностью нельзя было. В итоге мы упёрлись в ряд квестов, которые решить было нереально, так как текст перевода был и кривой, и битый. Walkthrough тогда не было, поэтому игра так и осталась незавершённой где‑то на 95%.

К чему эти мемуары? Прошло больше 20 лет, но что‑то я сталкиваюсь с похожими парадоксами и по сей день. И это не игры, а мобильные приложения крупных международных компаний. Дабы быть local‑friendly, разработчики делают автоматическую локализацию приложений в соответствии с регионом или системными настройками смартфона. В итоге это выглядит иногда кринжово, иногда смешно, но чаще очень раздражающе, когда надо воспользоваться сервисом, а там «утюг для корочек парашюта». И речь идёт не про автоматическую локализацию каталогов, как у «алика» например, а даже про какие‑то базовые фичи. И вишенка на торте — язык вручную поменять нельзя.

Читать далее