Обновить
1024K+

Android *

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

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

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

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели3.3K
В новом дайджесте продолжаем изучение архитектурного линтинга и CI/CD, исследуем «приключение на 20 минут» с legacy-кодом и оправдания для вайб-кодинга, SwiftUI Instruments, скрытные ботнеты, выпуск приложений Spotify и многое другое. Заходите!

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

Как запустить локальную LLM (AI) в Android Studio

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

Привет! Если вы мобильный разработчик и следите за AI-трендами, наверняка задумывались о том, как интегрировать языковые модели (LLM) в свои приложения прямо из Android Studio. В этой статье я расскажу, как это можно сделать быстро и просто, не полагаясь на внешние API и облачные решения.

Читать далее

Ох уж эти скрытные ботнеты

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

Вот очередной день, когда ботнеты пытаются взломать мой скромный почтовый сервер брутфорсом для рассылки спама. Такое случается волнами, но волны эти возникают постоянно и являются частью жизни системного администратора (естественно, они терпят неудачу ;).

IP-адреса, с которых происходят попытки использовать мой сервер для отправки спама

IP-адреса, с которых совершаются попытки подобрать имя пользователя/пароль для авторизации на моём почтовом сервере и рассылки спама
Читать дальше →

Content Based Theme в Android приложении

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

В этой статье мы будем раскрашивать MaterialCardView и её дочерние элементы в цвета, сочетающиеся с цветами изображения. Для этого воспользуемся DynamicColors API.

Читать далее

CI/CD по кнопке: как мы автоматизировали сборку SampleApp для SDK RuStore

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

Если вы хоть раз тестировали SDK для Android, то знаете, сколько времени и нервов может уйти на подготовку окружения и сборку тестового приложения. Особенно если это делает не разработчик, а, например, тестировщик или менеджер — сначала нужно настроить окружение, скачать и обновить ветку до актуального состояния, открыть Android Studio, найти нужные параметры в build.gradle, внести правки вручную, запустить сборку. И каждый раз надеяться, что ничего не отвалится.

Читать далее

Обновляем AOSP-приложение «Контакты», или Чем обернулось «приключение на 20 минут» с legacy-кодом

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

Привет, Хабр! Меня зовут Дмитрий, я старший инженер-программист в департаменте разработки мобильных приложений YADRO. В этой статье я расскажу о нашем опыте работы со стандартным AOSP-приложением «Контакты». Это базовая версия телефонной книги, разработанная в рамках Android Open Source Project (AOSP). На этапе ревью дизайна мы решили, что можно улучшить UI, не трогая бизнес-логику. Это дало начало увлекательной истории...

Читать далее

Мобильная разработка за неделю #584 (14 — 20 апреля)

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели4.2K
В этом выпуске обеспечение архитектурных правил с SwiftLint и эмуляция бесконтактных карт, тестирование Android-приложений в масштабе Netflix и разрешения в Appium, полная инструкция по разработке PWA, защита данных пользователей от скриншотов, анти-этичный ИИ и многое другое. Заходите!

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

Какой фреймворк выбрать для MVP стартапа: опыт разработчика и фаундера

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

Автор: разработчик и фаундер с опытом запуска стартапов в сферах туризма, HR tech, а сейчас — в музыкальной индустрии.

По образованию — Data Scientist, по призванию — Android-разработчик и продукт-менеджер.

Работал в крупных продуктах вроде X5 и Uzum, где впервые познакомился с Kotlin Multiplatform Mobile (KMM). Когда настал момент создавать прототип для своего музыкального стартапа, выбор был очевиден: я уже знал Kotlin, имел боевой опыт с KMM — и хотел быстро двигаться без лишних компромиссов.

Но KMM — не единственный путь.

На столе были и Flutter, и React Native, и даже классическая нативка.

В этой статье я расскажу:

Читать далее

Часть 2: XML или Compose — что выбрать, и что нужно знать перед выбором

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

Автор: Android-разработчик с 7+ годами опыта, знающий толк в FrameLayout, merge, include, RecyclerView, а теперь и Modifier.padding.

Читать далее

Что скрывает Robolectric и почему это важно знать?

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

Представьте, что можно тестировать android-код без эмулятора, запуская тесты за секунды вместо минут. Именно это обещает Robolectric — библиотека, которую либо любят, либо ненавидят, но точно не игнорируют. 

За кажущейся простотой «просто добавь зависимость» скрывается удивительная магия модификации байткода, о которой не рассказывают в статьях. Предлагаю разобраться, как на самом деле работает магия Robolectric и почему эти знания пригодятся любому android-разработчику.

Читать далее

Сканирование баркодов c помощью камеры и внешних устройств в Compose

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

В этой статье рассмотрим, как сканировать баркоды в Android — приложениях, а также как в Compose работать с камерой (предпросмотр и логика сканирования), а также и как поддерживать внешние сканеры.

Читать далее

XML vs Compose, не можете решить? Часть 1: Введение

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

Jetpack Compose — не просто «альтернатива XML». Это совершенно другой парадигмальный сдвиг в том, как Android отрисовывает и управляет UI. Но чтобы по‑настоящему понять, чем Compose отличается от привычного XML, давайте посмотрим, что происходит под капотом в каждом случае.

Читать далее

Установка root прав на POCO M4 Pro 5G (evergreen)

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

Для того чтобы установить рут-права на Android-устройство, потребуется выполнить несколько шагов:

1. Разблокировать загрузчик вашего устройства.

2. "Пропатчить" загрузочный образ (boot.img) вашей прошивки через Magisk.

3. Установить пропатченный образ на устройство через ADB/Fastboot.

Читать далее

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

GrapheneOS: Pixel, но не Google

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

О полезных функциях и процессе установки GrapheneOS - одной из самых безопасных мобильных операционных систем.

Читать далее

Мобильная разработка за неделю #583 (7 — 13 апреля)

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели7.1K
В новом дайджесте рассказываем как банки живут в заблокированном App Store, как создать UI-конструктор с помощью Compose Multiplatform, исследуем новый фреймворк внедрения зависимостей для Android и портируем кроссплатформенную С++ игру на iOS, изучаем Google Firebase Studio и многое другое. Заходите!

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

Демоприложения: как жить, когда у вас 90+ application-модулей

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

С того момента, как Олег Шелякин рассказал про запуск демоприложений в проекте мобильного банка, большинство команд успело обзавестись своей собственной уютной демкой, и сейчас их количество приближается к 90. 

В предыдущей статье основной акцент был на сокращении времени сборки и синхронизации кода с Android Studio. Но так уж выходит, что, решая одну проблему, мы порождаем другие. Если раньше был один единственный application module, к которому подключались все остальные модули для сборки в конечный артефакт(apk, aab), то сейчас таких модулей стало приблизительно на 90 больше.

Меня зовут Роман Заремба и я расскажу, как мы ушли от кода интеграции в application-модулях, пересмотрели базовые решения, придумали подход collector + initializer, перешли на библиотеку App Startup, избавились от нее и стали использовать стандартный Java ServiceLoader.

Читать далее

У нас в проекте был Compose Multiplatform, но снова я бы так не делал

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

Мобильная разработка продолжает развиваться, но, если честно, никаких революционных прорывов в последнее время не произошло. Громкие темы, вроде Kotlin Multiplatform (KMP), Flutter, Jetpack Compose, SwiftUI, уже давно закрепились в индустрии, а новинки больше эволюционируют, чем меняют правила игры. Компании экспериментируют с кроссплатформенными решениями, и это выглядит логично. Писать общий код для iOS и Android 一 это экономия ресурсов и времени. Вроде бы верно, но на практике всё не так гладко.

Привет, меня зовут Максим Плахута и с недавнего времени я руковожу Android разработкой «Кинопоиска». До этого руководил мобильной разработкой Почты Яндекс. А ещё я участник ПК новой конференции по мобильной разработке Apps Conf. Расскажу, какие шишки набили в реализации кроссплатформенного проекта и чего лучше не делать в современной мобильной разработке.

Читать далее

A/B-тестирование в Android-разработке: гайд для middle+ разрабов

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

A/B-тестирование — это не только инструмент для продуктовых команд. Это суперспособность и для Android-разработчиков. В этой статье рассказываю, как опытные инженеры могут проектировать, реализовывать и грамотно завершать эксперименты, которые действительно влияют на продукт, не захламляя кодовую базу. От Firebase Remote Config до паттернов чистой архитектуры — всё, чтобы делать более умные и осознанные Android-приложения.

🚀 Почему A/B-тестирование важно именно для разработчиков

По сути, A/B-тест — это сравнение двух (или более) вариантов реализации, чтобы понять, какой из них работает лучше. В Android это может быть:

• сравнение разных UI-дизайнов,

• тестирование разных онбордингов,

• проверка производительности оптимизаций,

• сравнение реализаций фич (например, RecyclerView против LazyColumn в Compose).

Вместо «выпустим и посмотрим» — мы выпускаем, измеряем и улучшаем.

🧩 Как встроить A/B-тесты в кодовую базу

Хороший A/B-тест начинается с гипотезы и метрик успеха. Но в инженерном мире нужно думать ещё и о поддержке, масштабировании и разделении логики.

Читать далее

Приложение для Android: Справочник по DC-DC микросхемам с функцией подбора по параметрам и типовыми схемами включения

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

В одном из комментариев к статье о приложении SMD CODES было предложено сделать отдельное приложение о микросхемах питания DC-DC (импульсные преобразователи напряжения).

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

Читать далее

Узнаём какое аниме будет самым рейтинговым еще до выхода

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

Когда встал вопрос "о чем писать диплом", я точно знала, что не хочу писать о чем-то скучном или не интересным для меня. Было много идеи (не только про аниме) и даже в сфере аниме - не только про задачу прогнозирования. Когда уже надо было утверждать тему, на одной из лекции как раз рассказывали про задачи классификации и прогнозирования. Я знала, что уже есть вагон и маленькая тележка статей про прогнозирование в области фильмов, но в аниме? Критически мало. И я решила это исправить)

Читать далее