Мобильная разработка #1 – Telegram
Мобильная разработка #1
3.98K subscribers
796 photos
85 videos
32 files
1.26K links
Всё о создании приложений под Android и iOS в одном месте.

🔹 Инструменты, библиотеки и ресурсы для ускорения работы.
🔹 Статьи и гайды для разработчиков любого уровня.
🔹 Тренды мобильной разработки и новости индустрии.

Реклама @evgenycarter
Download Telegram
Как мониторить здоровье вашей Gradle-сборки

Привет! Я Сергей Боиштян, Software engineer в команде Speed. Мы делаем инструменты для тестирования, андроид-разработки, CI и CD. Чтобы больше узнать о том, чем мы занимаемся, посмотрите наш github или канал для обсуждения CI и сборки под андроид.

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

https://habr.com/ru/companies/avito/articles/766764/

#Android

👉 @developer_mobila
👍2
Using Core Data and Swift Data side by side

Недавно я изучал, как настроить Core Data и Swift Data в NowPlaying так, чтобы они указывали на одно и то же постоянное хранилище данных, и тогда я смогу использовать оба фреймворка бок о бок.

Это полезно, если вы собираетесь перейти с Core Data на Swift Data, но хотите делать это постепенно, или если вы хотите использовать Swift Data для конкретных случаев использования в вашем приложении, таких как виджеты.

Учитывая, что Swift Data выполняет операции исключительно в главном потоке, я бы не рекомендовал полностью переходить на него, так как это негативно скажется на производительности вашего приложения, но он действительно может быть очень полезен для небольших и не затратных операций.

https://www.polpiella.dev/core-data-and-swift-data/

#ios

👉 @developer_mobila
Использование on-demand ресурсов для безопасного хранения ключей API в iOS-приложениях

Следует помнить, что извлечь строки из файлов IPA довольно просто, и поэтому, если мы храним API-ключи в коде, кто-то другой может получить к ним доступ. Это, конечно, большая проблема для безопасности.

https://augmentedcode.io/2023/11/27/using-on-demand-resources-for-securely-storing-api-keys-in-ios-apps/

#ios

👉 @developer_mobila
👍2
Готовим конфигурацию Android-приложения с помощью Dynamic Proxy и рефлексии

Android-разработчик RuStore Анатолий Гусев расскажет, как приготовить систему «холодных» конфигов для большого Android-приложения, построенного на многомодульной архитектуре. Под «холодными» конфигами здесь подразумеваются настройки приложения, которые нужно делать локально на девайсе без необходимости загружать их из сети.

https://habr.com/ru/companies/vk/articles/777874/

#Android

👉 @developer_mobila
👍1
Как устроен протокол iMessage

В этом посте я вкратце расскажу о внутреннем устройстве iMessage, изученном мной в процессе работы над pypush — опенсорсным проектом воссоздания реализации iMessage.

Ради краткости и понятности я не буду вдаваться в технические подробности. Если вы хотите узнать, как конкретно всё реализовано, то изучите репозиторий pypush.

https://habr.com/ru/articles/779064/

#ios

👉 @developer_mobila
👍1
Создание простого калькулятора в Android Studio

Эта статья - лабораторная работа, предназначенная для введения в android разработку. Главной целью является создание работающего мобильного приложения с базовыми функциями калькулятора.

https://habr.com/ru/articles/779464/

#Android

👉 @developer_mobila
👍4
Перед вами — книга-метод, книга-наставник, способная перевернуть мышление и помочь выработать осознанный подход к работе и жизни в целом путём высокоуровневого планирования.

В своей второй книге IT-архитектор, методолог, педагог Александр Бындю раскрывает наиболее эффективный на сегодняшний день метод стратегического планирования, получивший название «Карта гипотез». Карта учит, как достигать намеченной цели через гипотезы, и служит навигатором на этом пути. В основу книги легли годы практики, и с уверенностью можно сказать, что Карта гипотез позволяет создать стратегию достижения для самых амбициозных целей.

У Карты гипотез нет ограничений по области применения или роли пользователя — она будет полезна в самых разных ситуациях, от личного планирования до планирования работы огромной компании. Автор надеется, что его метод, которому посвящена эта книга, послужит вашему благополучию во всех сферах жизни.

Ознакомиться с книгой
👍1
Swift Utilities — Работа со SwiftData в Background

За годы работы разработчиком iOS, я собрал множество инструментов и полезных штук, которые облегчают процесс разработки. В этой статье, я хочу поделиться одним из таких инструментов. Это будет не большая статья. Я покажу, как пользоваться этой утилитой, продемонстрирую её в действии. Надеюсь, что статья окажется полезной для вас.

SwiftData отлично функционирует внутри View: достаточно добавить декоратор @ Query к свойству, и все будет работать 'из коробки'. Однако, когда возникает желание вынести работу со SwiftData в отдельный модуль, начинают появляться сложности, особенно касаемо выполнения операций в фоновом режиме.

https://habr.com/ru/articles/779450/

#ios

👉 @developer_mobila
👍1
Как интегрировать Dynamic Features в Android-приложение

Разбор о влиянии Play Feature Delivery на архитектуру приложения, миграции существующих фич и выборе динамических фич. Будет интересно для всех, кто хочет узнать больше об оптимизации и развитии Android-приложений.

0:00 Вступление
1:20 Содержание
2:27 Архитектура приложений до Play Feature Delivery
4:54 Влияние Play Feature Delivery на архитектуру приложения
7:34 Интеграция AvitoTech
8:12 Миграция существующих фичей
13:18 Какая фича должна быть динамической
15:42 Заключение
16:21 Благодарность патронам

https://www.youtube.com/watch?v=GjnK6xZ-0GM

#Android

👉 @developer_mobila
👍1
Улучшение производительности Android-приложения NordVPN с помощью плагина Compose Compiler

Эта практика помогает нам использовать плагин Compose Compiler в качестве проверки Composable кода, что поддерживает стандарты кодирования и способствует повышению производительности приложения.

https://nordsecurity.com/blog/improving-nordvpn-android-compose-compiler

#Android

👉 @developer_mobila
Koin, Ktor & Paging in KMM | Compose Multiplatform

Kotlin Multiplatform Mobile (KMM) превратился из амбициозной идеи в стабильный и мощный фреймворк, предоставляющий разработчикам возможность беспрепятственно обмениваться кодом на разных платформах. Благодаря недавнему достижению стабильности KMM стал переломным моментом в мире кроссплатформенной разработки.

https://proandroiddev.com/koin-ktor-paging-in-kmm-1800b9fad7f3

#Android

👉 @developer_mobila
Enhancing Jetpack Compose app performance

Chapters:
00:00 – Introduction
00:10 – R8 and baseline profiles effects
01:17 – Measure → Debug → Improve
01:51 – Measure with Jetpack Macrobenchmark
03:53 – StartupMode explanation
05:02 – CompilationMode explanation
06:00 – Measure app startup and report fully drawn state
08:47 – Measure frame timing
09:55 – Debug with system tracing
12:46 – Add more information to system tracing
16:38 – Measure recompositions
18:02 – Layout Inspector and Composition Debugger
20:10 – Update Jetpack Compose!
20:30 – Generate a baseline profile
20:32 – Defer phases when frequently changing state
24:04 – Use BoxWithConstraints only when needed
24:48 – remember{} only heavy operations
25:26 – Load heavy images asynchronously
26:13 – Split heavy frames
27:13 – Outro

https://www.youtube.com/watch?v=Z96wfbID_Yc

#Android

👉 @developer_mobila
👍1