Мобильная разработка
14.8K subscribers
542 photos
229 videos
2.57K links
Актуальное по мобильной разработке — Android, iOS, кроссплатформа

Разместить рекламу: @tproger_sales_bot
Правила общения: https://tprg.ru/rules
Другие каналы: @tproger_channels
Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/oVBP
Download Telegram
Обновляем виджеты к Android 12

В Android 12 дизайн-система Material You придёт на смену Material Design. Чтобы соответствовать новому дизайну, ваш виджет должен поддерживать цветовую схему всей системы и иметь закруглённые края.

Гайд поможет добавить в виджет поддержку новых возможностей Android 12:

https://tprg.ru/TVBi

#android
Snapshot-тестирование в iOS-приложении

Snapshot-тесты сравнивают скриншоты приложения, полученные во время тестирования, с идеальным скриншотом. Такая методика подойдёт, например, для проверки вёрстки сложных элементов интерфейса.

Узнайте о том, как можно внедрить Snapshot-тесты в ваше приложение:

https://tprg.ru/Zs1c

#ios #тестирование
Внедрение в Android-приложение анимации переворачивания карточки

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

В статье подробно описан процесс реализации подобной анимации:

https://tprg.ru/I0Pe

#android
Введение в архитектуру мобильного приложения

Архитектура приложения упрощает разработку и дальнейшую поддержку продукта.

В мобильной разработке наиболее популярны архитектуры Model-View-ViewModel (MVVM), Model-View-Controller (MVC) и Model-View-Presenter (MVP). В чём их суть, объясняется в видео:

https://youtu.be/HC33Mggec3k

#android #начинающим #архитектура
Виды рекламы в мобильных приложениях

Реклама — основной способ монетизации приложений. Всего существует 4 основных вида рекламы:

— баннерная;
— нативная;
— видео с наградой;
— interstitial.

В гайде подробно расписано про каждую из них:

https://tprg.ru/ko70

#android #ios
Как безопасно собрать и подписать Android-приложение с помощью GitHub Actions

Чтобы подписать Android-приложение, вам нужно сгенерировать файл KeyStore, содержащий цифровой сертификат. Однако при работе в команде могут возникнуть проблемы в безопасности при подписи очередного «билда».

В статье описано, как можно настроить автоматическую подпись приложения с помощью GitHub Actions и при этом не загружать KeyStore-файл в публичный репозиторий:

https://tprg.ru/hTlR

#android
Работу в IT можно найти прямо на нашем сайте

На Tproger доступен раздел вакансий, в том числе по мобильной разработке: https://tprg.ru/qHld

В нём можно отфильтровать вакансии по сфере деятельности, работе удалённо или в офисе, зарплате и другим критериям.

Если ничего не найдёте, то вы можете подписаться на рассылку подходящих вам вакансий прямо в нашем Telegram-боте: t.me/tproger_official_bot?start=mailings

Или в боте ВКонтакте: vk.me/tproger?ref=mailings

#вакансия #работа
Автоматизация UI-тестирования в Android-приложении Яндекс.Недвижимость

Эта статья — расшифровка доклада руководителя Android-разработки Яндекс.Недвижимости. В нём он рассказал об эволюции UI-тестирования в команде и почему был выбран для автоматизации тестов фреймворк Espresso:

https://tprg.ru/Xpz4

#android #тестирование

Оригинальный доклад:
Памятка по жизненному циклу Android: отдельные Activity

В статье показан жизненный цикл компонентов Android во время нескольких сценариев:

— приложение завершено и перезапущено;
— пользователь уходит из приложения;
— изменение конфигурации;
— приложение приостановлено системой.

https://tprg.ru/Hylk

#android
От APK до AAB: как развивались пакеты Android-приложений

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

На протяжении всей истории Android Google борется с этой проблемой. И в ролике показан путь развития Android от виртуальной машины Dalvik до формата AAB, который призван уменьшить размер скачиваемых пользователем файлов:

https://youtu.be/ELAom-5uyug

#android #начинающим
Работа с фоновыми задачами в Android 12

Приложения, в которых целевой платформой станет Android 12, не смогут запустить foreground-сервисы в бэкграунде. Вместо этого Google предлагает использовать WorkManager с expeditor jobs.

Вот как можно подготовить ваш проект к Android 12: https://tprg.ru/irT5

#android
Сделайте ваш код на Kotlin лучше: инструменты для статического анализа кода

Android Studio уже имеет базовые возможности для анализа кода. Но если вам их недостаточно, то на помощь придут сторонние инструменты статического анализа, такие как Detekt и Ktlint. Их обзор приведён в статье:

https://tprg.ru/wpcn

#android #kotlin
Держите шпаргалку по работе с Kotlin Flow. PDF-версию мы приложим в комментариях.

#kotlin #android
Вышла стабильная версия 1.0 Jetpack Compose

Jetpack Compose — фреймворк для разработки UI в декларативном стиле — спустя два года после анонса получил долгожданный релиз. Теперь его можно полноценно использовать в рабочих проектах.

Для работы с Jetpack Compose нужно установить последнюю версию Android Studio Arctix Fox 2020.3.1.

Подробнее: https://tprg.ru/hOi9

#android #jetpack
Вместе с релизом Jetpack Compose вышла из беты Android Studio Arctic Fox 2020.3.1

Теперь номер версии Android Studio будет связан с версией IntelliJ IDEA, на которой основана IDE.

Также каждая версия Android Studio теперь получит кодовое имя в алфавитном порядке (привет, старое-доброе наименование Android). Так следующая версия (сейчас в Canary-ветке) называется Bumblebee.

Если вы пользуетесь stable-версией Android Studio, то обновление прилетит автоматически.

Все нововведения: https://tprg.ru/0n37

#android
Делаем iOS-приложение с поддержкой OpenVPN

Инструкция поможет вам создать приложение с минимальной функциональностью:

https://tprg.ru/9Rma

#ios
Готов ли Kotlin Multiplatform Mobile для кроссплатформенной разработки?

Для кроссплатформенных приложений на рынке используют уже проверенные фреймворки Flutter и React Native. Но у них есть минус — общий пользовательский интерфейс, который сложно поддерживать с учётом особенностей Android и iOS.

Однако существует фреймворк Kotlin Multiplatform Mobile, с помощью которого общая логика приложений пишется на Kotlin, а интерфейс уже разрабатывается нативно. Пока он находится в альфа-версии, но некоторые компании уже применяют его в реальных проектах.

В статье технический архитектор «Леруа Мерлен» рассказал о своём опыте работы с KMM:

https://tprg.ru/aSV6

#android #ios #kmm #react_native
Официальный курс от Google по Jetpack Compose

Бесплатный курс учит основам Compose и использованию декларативного стиля в разработке UI приложения. В процессе вы изучите:

— работу со слоями;
— использование состояний;
— создание анимаций и навигации;
— миграцию существующих приложений на Compose.

Курс: https://tprg.ru/UbK4

#android #jetpack #курсы
Вышла библиотека Lottie 4.0 с поддержкой Jetpack Compose

Помните, мы рассказывали в середине июля о Release Candidate версии Lottie? Вышла стабильная версия библиотеки, и теперь она умеет рендерить анимации из Adobe After Effects прямо из кода на Jetpack Compose.

В статье разработчики Lottie рассказали о том, как переработали саму библиотеку для поддержки Compose, и поделились гайдом, как запустить Lottie-анимацию из lottie-compose:

https://tprg.ru/a6QD

#библиотеки #android #jetpack
Делегаты в Kotlin

В Kotlin есть полезная фича — делегат. По сути, это класс с двумя методами: для получения и присвоения значения свойству. Благодаря делегату вы можете вынести механику геттеров и сеттеров в отдельный класс и переиспользовать её.

Статья поближе познакомит вас с делегатами в контексте Android-разработки: https://tprg.ru/Z0wE

Перевод статьи: https://tprg.ru/IHFL

#android #kotlin