Как стать автором
Поиск
Написать публикацию
Обновить
103.01

Android *

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

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

Android. Starting Kivy App and Service on bootup. API 35

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

Эта заметка является дополнением к статье Android. Starting Kivy App and Service on bootup, в которой запускал сервисом kivy приложение на API 22 Android 5. Теперь будем запускать на последних версиях Android. C API 26 Android 8 и по текущий API 35 Android 15 который есть у меня, постигли изменения, которые необходимо внести для автостарта сервиса. Проверял работу на API 22...35, телефоны: Highscreen power five, Nokia 8, Xiaomi Redmi Note 14.

Читать далее

Новости

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

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

В этом выпуске несколько технических разборов Max, отказ от MVVM и использование Retrofit с корутинами, магия анимаций RecyclerView и генерация UI Kit с использованием ИИ, опыт работы с Protobuf на реальном проекте, COBOL в 2025, вяжущая фасолина в топе App Store и многое другое. Заходите!

Читать далее

Что можно узнать о Max из AndroidManifest

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

Привет, Хабр!

Сегодня в сети есть много дискуссий о мессенджере Макс. Недавно я наткнулся на один пост в гитхабе с анализом Android-приложения, где приводятся страшные выводы о слежке за пользователями. Поскольку интерес к этому вопросу лично у меня велик, я решил разобрать важный файл приложения — его AndroidManifest.xml — и проверить факты. 

Сам по себе AndroidManifest.xml — это своеобразный декларативный контракт приложения с Android: в нем зашиты его идентичность, модель доступа, поверхность атаки, аппаратные и сетевые зависимости, а также внешние взаимодействия. По одному этому файлу уже видно, к каким данным приложение может проситься, что оно имеет право делать в фоне, какие входные точки открыты наружу и под какие правила безопасности платформы оно подпадает. Манифест задает границы возможностей и рисков, а код и выданные пользователем разрешения решают, воспользуется ли приложение этими возможностями.

Читать далее

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

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

Всем привет!

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

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

Читать далее

Замена YouTube Kids

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

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

В новом дайджесте распутываем навигацию 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 мин
Количество просмотров546

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

Читать далее

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

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

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

Читать далее

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

Читать далее

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

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

Привет!

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

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

Читать далее
1
23 ...

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