Теперь не нужно запускать программы на Kotlin через Rosetta — в Kotlin 1.5.30 появилась нативная поддержка ARM-чипов от Apple:
Telegram
Представляешь,
в Kotlin 1.5.30 завезли поддержку Apple Silicon M1 и улучшенный DSL для CocoaPods Gradle
Теперь можно нативно работать с Kotlin на новых устройствах Apple с чипом M1 без Rosetta.
Читать подробнее: tprg.ru/Gen8
Теперь можно нативно работать с Kotlin на новых устройствах Apple с чипом M1 без Rosetta.
Читать подробнее: tprg.ru/Gen8
Pacman на Jetpack Compose
А почему бы и нет? Старый-добрый Pacman прямо в вашем смартфоне.
Весь пользовательский интерфейс построен на Jetpack Compose. Анимации выполнены с помощью AnimateFloatAsState и InfiniteTransition.
Проект: https://github.com/danielmbutler/Pacman_Compose
История создания проекта: https://tprg.ru/I86p
#android #jetpack
А почему бы и нет? Старый-добрый Pacman прямо в вашем смартфоне.
Весь пользовательский интерфейс построен на Jetpack Compose. Анимации выполнены с помощью AnimateFloatAsState и InfiniteTransition.
Проект: https://github.com/danielmbutler/Pacman_Compose
История создания проекта: https://tprg.ru/I86p
#android #jetpack
Доклад «Абсолютная модуляризация» Степана Гончарова
Чем больше модулей в Android-проекте, тем чащё появляются проблемы с инкрементальными сборками и ошибки с неверным указанием зависимостей.
Но для решения проблем не обязательно становиться мастером в Gradle. Об интересном подходе к модуляризации рассказал в своём докладе разработчик из Lyft:
https://youtu.be/oAQlKiF91Ks
#android #доклады
Чем больше модулей в Android-проекте, тем чащё появляются проблемы с инкрементальными сборками и ошибки с неверным указанием зависимостей.
Но для решения проблем не обязательно становиться мастером в Gradle. Об интересном подходе к модуляризации рассказал в своём докладе разработчик из Lyft:
https://youtu.be/oAQlKiF91Ks
#android #доклады
YouTube
Степан Гончаров — Абсолютная модуляризация
Ближайшая конференция: Mobius 2025 Spring, 9–10 апреля, Москва + онлайн. Подробности и билеты: https://jrg.su/ojGU3B
— —
. . .
Что, если вам больше не нужно быть Gradle экспертом, чтобы проектировать, поддерживать и эффективно масштабировать современные многомодульные…
— —
. . .
Что, если вам больше не нужно быть Gradle экспертом, чтобы проектировать, поддерживать и эффективно масштабировать современные многомодульные…
Ребята сделали в мобильной игре на Unity режим батлрояля за 2 месяца и заодно обновили сетевой код для всей игры
Когда в сетевой комнате могло находиться максимум 10 игроков, то каждый игрок отправлял данные о всех сетевых событиях всем игрокам. Однако для расширения комнаты до 100 человек требовался иной подход к передаче сетевых данных.
Команда разработчиков рассказала, как оптимизировала сетевой код и сократила затраты на серверы:
https://tprg.ru/r4lZ
#gamedev #android #ios
Когда в сетевой комнате могло находиться максимум 10 игроков, то каждый игрок отправлял данные о всех сетевых событиях всем игрокам. Однако для расширения комнаты до 100 человек требовался иной подход к передаче сетевых данных.
Команда разработчиков рассказала, как оптимизировала сетевой код и сократила затраты на серверы:
https://tprg.ru/r4lZ
#gamedev #android #ios
Безопасность мобильных приложений
Идеальной защиты не существует. Но стоит понимать, что ваше приложение будут пытаться взломать ровно до того момента, пока это станет невыгодно.
Поэтому стоит позаботиться о внедрении базовых методов защиты, о которых рассказано в статье:
https://tprg.ru/S8GH
#android
Идеальной защиты не существует. Но стоит понимать, что ваше приложение будут пытаться взломать ровно до того момента, пока это станет невыгодно.
Поэтому стоит позаботиться о внедрении базовых методов защиты, о которых рассказано в статье:
https://tprg.ru/S8GH
#android
Хинт для программистов: кроме этого канала у Tproger есть ещё 4 канала, где можно получать отборную инфу по конкретной теме.
Каждый найдёт что-нибудь для себя:
— геймдев: @make_game
— основы программирования: @prog_point
— разработка на Python: @zen_of_python
— веб-разработка: @tproger_web
Каждый найдёт что-нибудь для себя:
— геймдев: @make_game
— основы программирования: @prog_point
— разработка на Python: @zen_of_python
— веб-разработка: @tproger_web
Приложение для тайм-менеджмента
Пользователь может поставить задачу, задать её длительность и выбрать дни, в которые её нужно выполнить. По итогу текущий день отображается в виде круговой диаграммы с намеченными на день задачами.
Приложение написано на Flutter и поддерживает тёмную и светлую тему:
https://github.com/theiskaa/VTime
#flutter #проекты
Пользователь может поставить задачу, задать её длительность и выбрать дни, в которые её нужно выполнить. По итогу текущий день отображается в виде круговой диаграммы с намеченными на день задачами.
Приложение написано на Flutter и поддерживает тёмную и светлую тему:
https://github.com/theiskaa/VTime
#flutter #проекты
Google обновила портал для начинающих разработчиков игр
Раздел существенно переработали. Помимо быстрых ссылок на документацию по фреймворку Android Game Development Kit и работе с Google Play, на портале сгруппировали гайды:
— для создания собственного игрового движка или модификации существующего;
— по разработке игр на готовых игровых движках, таких как Unity, Unreal Engine, Godot или Defold.
Обновлённый портал: https://developer.android.com/games
#android #начинающим
Раздел существенно переработали. Помимо быстрых ссылок на документацию по фреймворку Android Game Development Kit и работе с Google Play, на портале сгруппировали гайды:
— для создания собственного игрового движка или модификации существующего;
— по разработке игр на готовых игровых движках, таких как Unity, Unreal Engine, Godot или Defold.
Обновлённый портал: https://developer.android.com/games
#android #начинающим
Наконец-то вечер пятницы, и можно расслабиться дома (если вы, конечно, не сидите дома всё время на удалёнке).
Расскажите, что успели реализовать на этой неделе? Или же проводите время в отпуске?
#чат
Расскажите, что успели реализовать на этой неделе? Или же проводите время в отпуске?
#чат
Репозиторий с расширениями и хелперами на Kotlin
Пригодится, если понадобится быстро сделать прототип Android-приложения:
https://github.com/FunkyMuse/KAHelpers
#android #kotlin
Пригодится, если понадобится быстро сделать прототип Android-приложения:
https://github.com/FunkyMuse/KAHelpers
#android #kotlin
Обновляем виджеты к Android 12
В Android 12 дизайн-система Material You придёт на смену Material Design. Чтобы соответствовать новому дизайну, ваш виджет должен поддерживать цветовую схему всей системы и иметь закруглённые края.
Гайд поможет добавить в виджет поддержку новых возможностей Android 12:
https://tprg.ru/TVBi
#android
В Android 12 дизайн-система Material You придёт на смену Material Design. Чтобы соответствовать новому дизайну, ваш виджет должен поддерживать цветовую схему всей системы и иметь закруглённые края.
Гайд поможет добавить в виджет поддержку новых возможностей Android 12:
https://tprg.ru/TVBi
#android
Snapshot-тестирование в iOS-приложении
Snapshot-тесты сравнивают скриншоты приложения, полученные во время тестирования, с идеальным скриншотом. Такая методика подойдёт, например, для проверки вёрстки сложных элементов интерфейса.
Узнайте о том, как можно внедрить Snapshot-тесты в ваше приложение:
https://tprg.ru/Zs1c
#ios #тестирование
Snapshot-тесты сравнивают скриншоты приложения, полученные во время тестирования, с идеальным скриншотом. Такая методика подойдёт, например, для проверки вёрстки сложных элементов интерфейса.
Узнайте о том, как можно внедрить Snapshot-тесты в ваше приложение:
https://tprg.ru/Zs1c
#ios #тестирование
Внедрение в Android-приложение анимации переворачивания карточки
В фитнес-приложении HealthifyMe карточка переворачивается, когда пользователь достигает дневную норму, и выводит об этом уведомление. Так пользователь больше вовлечён в интерфейс приложения.
В статье подробно описан процесс реализации подобной анимации:
https://tprg.ru/I0Pe
#android
В фитнес-приложении HealthifyMe карточка переворачивается, когда пользователь достигает дневную норму, и выводит об этом уведомление. Так пользователь больше вовлечён в интерфейс приложения.
В статье подробно описан процесс реализации подобной анимации:
https://tprg.ru/I0Pe
#android
Введение в архитектуру мобильного приложения
Архитектура приложения упрощает разработку и дальнейшую поддержку продукта.
В мобильной разработке наиболее популярны архитектуры 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