Введение в архитектуру мобильного приложения
Архитектура приложения упрощает разработку и дальнейшую поддержку продукта.
В мобильной разработке наиболее популярны архитектуры Model-View-ViewModel (MVVM), Model-View-Controller (MVC) и Model-View-Presenter (MVP). В чём их суть, объясняется в видео:
https://youtu.be/HC33Mggec3k
#android #начинающим #архитектура
Архитектура приложения упрощает разработку и дальнейшую поддержку продукта.
В мобильной разработке наиболее популярны архитектуры Model-View-ViewModel (MVVM), Model-View-Controller (MVC) и Model-View-Presenter (MVP). В чём их суть, объясняется в видео:
https://youtu.be/HC33Mggec3k
#android #начинающим #архитектура
YouTube
Что такое архитектура приложения. Паттерны MVC, MVP, MVVM.
Данное видео - это краткая вводная лекция в архитектуру приложений. В нем я рассказываю о том, что такое архитектура, и какую роль она играет при развитии программного продукта. Так же пробежимся по паттернам проектирования, которые используются для построения…
Виды рекламы в мобильных приложениях
Реклама — основной способ монетизации приложений. Всего существует 4 основных вида рекламы:
— баннерная;
— нативная;
— видео с наградой;
— interstitial.
В гайде подробно расписано про каждую из них:
https://tprg.ru/ko70
#android #ios
Реклама — основной способ монетизации приложений. Всего существует 4 основных вида рекламы:
— баннерная;
— нативная;
— видео с наградой;
— interstitial.
В гайде подробно расписано про каждую из них:
https://tprg.ru/ko70
#android #ios
Как безопасно собрать и подписать Android-приложение с помощью GitHub Actions
Чтобы подписать Android-приложение, вам нужно сгенерировать файл KeyStore, содержащий цифровой сертификат. Однако при работе в команде могут возникнуть проблемы в безопасности при подписи очередного «билда».
В статье описано, как можно настроить автоматическую подпись приложения с помощью GitHub Actions и при этом не загружать KeyStore-файл в публичный репозиторий:
https://tprg.ru/hTlR
#android
Чтобы подписать 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
#вакансия #работа
На 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-разработки Яндекс.Недвижимости. В нём он рассказал об эволюции UI-тестирования в команде и почему был выбран для автоматизации тестов фреймворк Espresso:
https://tprg.ru/Xpz4
#android #тестирование
Оригинальный доклад:
YouTube
Автоматизация UI тестирования в приложении Яндекс Недвижимость на Android – Александр Рогов
Памятка по жизненному циклу Android: отдельные Activity
В статье показан жизненный цикл компонентов Android во время нескольких сценариев:
— приложение завершено и перезапущено;
— пользователь уходит из приложения;
— изменение конфигурации;
— приложение приостановлено системой.
https://tprg.ru/Hylk
#android
В статье показан жизненный цикл компонентов Android во время нескольких сценариев:
— приложение завершено и перезапущено;
— пользователь уходит из приложения;
— изменение конфигурации;
— приложение приостановлено системой.
https://tprg.ru/Hylk
#android
От APK до AAB: как развивались пакеты Android-приложений
Фрагментация — одна из основных проблем Android-экосистемы. Из-за различных конфигураций железа разработчику необходимо держать в одном пакете множество дополнительных ассетов и других файлов.
На протяжении всей истории Android Google борется с этой проблемой. И в ролике показан путь развития Android от виртуальной машины Dalvik до формата AAB, который призван уменьшить размер скачиваемых пользователем файлов:
https://youtu.be/ELAom-5uyug
#android #начинающим
Фрагментация — одна из основных проблем Android-экосистемы. Из-за различных конфигураций железа разработчику необходимо держать в одном пакете множество дополнительных ассетов и других файлов.
На протяжении всей истории Android Google борется с этой проблемой. И в ролике показан путь развития Android от виртуальной машины Dalvik до формата AAB, который призван уменьшить размер скачиваемых пользователем файлов:
https://youtu.be/ELAom-5uyug
#android #начинающим
YouTube
От APK до AAB: КАК РАБОТАЕТ ANDROID | РАЗБОР
🤟 Подписка! ↓ ↓ ↓
https://goo.gl/CbimGk
Сегодня поговорим о том, как Android пришёл к новому формату публикации приложений — Android App Bundle. И, заодно, раскроем много страшных тайн Android.
СОДЕРЖАНИЕ
0:00 Вступление
0:58 Проблема Android
1:47 Java…
https://goo.gl/CbimGk
Сегодня поговорим о том, как Android пришёл к новому формату публикации приложений — Android App Bundle. И, заодно, раскроем много страшных тайн Android.
СОДЕРЖАНИЕ
0:00 Вступление
0:58 Проблема Android
1:47 Java…
Работа с фоновыми задачами в Android 12
Приложения, в которых целевой платформой станет Android 12, не смогут запустить foreground-сервисы в бэкграунде. Вместо этого Google предлагает использовать WorkManager с expeditor jobs.
Вот как можно подготовить ваш проект к Android 12: https://tprg.ru/irT5
#android
Приложения, в которых целевой платформой станет 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
Android Studio уже имеет базовые возможности для анализа кода. Но если вам их недостаточно, то на помощь придут сторонние инструменты статического анализа, такие как Detekt и Ktlint. Их обзор приведён в статье:
https://tprg.ru/wpcn
#android #kotlin
Вышла стабильная версия 1.0 Jetpack Compose
Jetpack Compose — фреймворк для разработки UI в декларативном стиле — спустя два года после анонса получил долгожданный релиз. Теперь его можно полноценно использовать в рабочих проектах.
Для работы с Jetpack Compose нужно установить последнюю версию Android Studio Arctix Fox 2020.3.1.
Подробнее: https://tprg.ru/hOi9
#android #jetpack
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
Теперь номер версии 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
Инструкция поможет вам создать приложение с минимальной функциональностью:
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
Для кроссплатформенных приложений на рынке используют уже проверенные фреймворки 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 #курсы
Бесплатный курс учит основам 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
Помните, мы рассказывали в середине июля о 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
В Kotlin есть полезная фича — делегат. По сути, это класс с двумя методами: для получения и присвоения значения свойству. Благодаря делегату вы можете вынести механику геттеров и сеттеров в отдельный класс и переиспользовать её.
Статья поближе познакомит вас с делегатами в контексте Android-разработки: https://tprg.ru/Z0wE
Перевод статьи: https://tprg.ru/IHFL
#android #kotlin
👍1
Библиотека Gmenu для создания меню в iOS-приложении
С помощью Gmenu вы сможете создать меню, которое разворачивается из угла верхней панели поиска и отображает несколько больших иконок. В процессе появления меню строки из UITableView прокручиваются вниз.
Репозиторий: https://github.com/amirdew/gmenu
#ios #библиотеки
С помощью Gmenu вы сможете создать меню, которое разворачивается из угла верхней панели поиска и отображает несколько больших иконок. В процессе появления меню строки из UITableView прокручиваются вниз.
Репозиторий: https://github.com/amirdew/gmenu
#ios #библиотеки
5 советов начинающим Android-разработчикам
1. Не изобретайте колесо, используйте готовые библиотеки.
2. Используйте Fragment вместо Activity.
3. Используйте плагины для Android Studio.
4. Не разрабатывайте приложение под ваш смартфон (только если вы не делаете его для себя).
5. Всегда запускайте тесты перед выпуском новой версии приложения.
Подробнее советы разъяснены в статье: https://tprg.ru/RVQL
#android #начинающим
1. Не изобретайте колесо, используйте готовые библиотеки.
2. Используйте Fragment вместо Activity.
3. Используйте плагины для Android Studio.
4. Не разрабатывайте приложение под ваш смартфон (только если вы не делаете его для себя).
5. Всегда запускайте тесты перед выпуском новой версии приложения.
Подробнее советы разъяснены в статье: https://tprg.ru/RVQL
#android #начинающим
Централизуем дизайн Flutter-приложения
Может показаться странным, но у страниц настроек, показанных выше, почти идентичный код. Этого удалось достичь за счёт переноса данных о теме приложения в объект ThemeData.
В статье объясняется, как это сделать:
https://tprg.ru/fNrA
#flutter
Может показаться странным, но у страниц настроек, показанных выше, почти идентичный код. Этого удалось достичь за счёт переноса данных о теме приложения в объект ThemeData.
В статье объясняется, как это сделать:
https://tprg.ru/fNrA
#flutter
Множество разработчиков жалуется на баги новой версии Android Studio (и даже некоторые наши читатели).
Расскажите, столкнулись ли вы с проблемами? Или же работает прямо огонь (хе-хе)?
#чат
Расскажите, столкнулись ли вы с проблемами? Или же работает прямо огонь (хе-хе)?
#чат