SwiftUI совет
В iOS 16+ можно сделать так, чтобы
👉 @MobDevPortal
В iOS 16+ можно сделать так, чтобы
TextField автоматически расширялся по вертикали по мере ввода текста, для этого достаточно установить параметр axis в значение .verticalPlease open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤2
К вопросу о шифровании данных на мобильных устройствах бизнес-пользователей
Название статьи кажется несовсем подходящее, т.к. про мобилки там совсем малая часть, но для общего понимания принципов и механики шифрования данных – почитать можно.
- Процесс шифрования данных
- Симметричные алгоритмы шифрования
- Асимметричные алгоритмы шифрования
- Шифрование на Android с помощью библиотек Cipher и SQLCipher
- Шифрование по ГОСТ: есть ли перспективы?
Читать
👉 @MobDevPortal
Название статьи кажется несовсем подходящее, т.к. про мобилки там совсем малая часть, но для общего понимания принципов и механики шифрования данных – почитать можно.
- Процесс шифрования данных
- Симметричные алгоритмы шифрования
- Асимметричные алгоритмы шифрования
- Шифрование на Android с помощью библиотек Cipher и SQLCipher
- Шифрование по ГОСТ: есть ли перспективы?
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Kotlin Mutex: Thread-Safe Concurrency for Coroutines
Крутая статья про то, как писать потокобезопасный код используя Kotlin Mutex с Корутинами. Там и кейсы, и ошибки, и лучшие практики, в общем всё как мы любим 🔥.
- What is Mutex?
- Core Use Cases for Mutex
- Best Practices
- Mutex vs. Other Synchronization Methods
- Common Pitfalls
- Performance Considerations
- Real-World Example: Thread-Safe Repository
- Testing Mutex-Protected Code
- Final Thoughts
🔸 Читать
👉 @MobDevPortal
Крутая статья про то, как писать потокобезопасный код используя Kotlin Mutex с Корутинами. Там и кейсы, и ошибки, и лучшие практики, в общем всё как мы любим 🔥.
- What is Mutex?
- Core Use Cases for Mutex
- Best Practices
- Mutex vs. Other Synchronization Methods
- Common Pitfalls
- Performance Considerations
- Real-World Example: Thread-Safe Repository
- Testing Mutex-Protected Code
- Final Thoughts
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Совет по SwiftUI
В iOS 26.0+ можно сделать так, чтобы кнопки автоматически расширялись, заполняя всю доступную ширину контейнера, с помощью модификатора
Идеально подходит для онбординга и paywall-экранов
👉 @MobDevPortal
В iOS 26.0+ можно сделать так, чтобы кнопки автоматически расширялись, заполняя всю доступную ширину контейнера, с помощью модификатора
.buttonSizing(.flexible)Идеально подходит для онбординга и paywall-экранов
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Опенсорс клиент для соц.сети Bluesky. Приложения на Jetpack Compose Multiplatform для Android, iOS и Desktop
Тех стек:
- Многомодульная архитектура
- Metro DI
- Coil для показа картинок
- Kotlin Coroutines и SerlializationX
- Ktor
- Jetpack Room
GitHub: Heron
👉 @MobDevPortal
Тех стек:
- Многомодульная архитектура
- Metro DI
- Coil для показа картинок
- Kotlin Coroutines и SerlializationX
- Ktor
- Jetpack Room
GitHub: Heron
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2
Совет по SwiftUI
Если вью не реагирует на тапы как ожидается, используйте
👉 @MobDevPortal
Если вью не реагирует на тапы как ожидается, используйте
contentShape(), чтобы задать её интерактивную областьPlease open Telegram to view this post
VIEW IN TELEGRAM
🔥12❤3
Производительность Jetpack Compose продолжает улучшаться
Начиная с 1.9, фризы на старых устройствах теперь на уровне Views. Благодаря работе над префетчингом и приостанавливаемой композицией
Подробнее в свежем выпуске Android Show:
https://youtube.com/live/0vMDXa2PluY?si=YVbzj4TOyRSGCT10
👉 @MobDevPortal
Начиная с 1.9, фризы на старых устройствах теперь на уровне Views. Благодаря работе над префетчингом и приостанавливаемой композицией
Подробнее в свежем выпуске Android Show:
https://youtube.com/live/0vMDXa2PluY?si=YVbzj4TOyRSGCT10
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2
Совет по SwiftUI
В iOS 26 строка поиска по умолчанию отображается внизу.
Её можно перенести в навигационный бар, изменив параметр
👉 @MobDevPortal
В iOS 26 строка поиска по умолчанию отображается внизу.
Её можно перенести в навигационный бар, изменив параметр
placement в модификаторе searchable().Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Combine – швейцарский нож iOS-разработчика. Или нет?
Большая статья с обзором Combine: как устроен фреймворк, какие сущности лежат в основе и примеры использования.
Читать
👉 @MobDevPortal
Большая статья с обзором Combine: как устроен фреймворк, какие сущности лежат в основе и примеры использования.
Небольшая сводка: Combine – фреймворк для работы с асинхронными событиями в декларативном стиле. Он помогает разработчикам управлять потоками данных, избавляя от множества колбэков, ручного управления очередями и других сложностей, связанных с асинхронностью.
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3
Совет по iOS-разработке
Вы можете отслеживать тепловое состояние устройства, чтобы при перегреве корректировать производительность приложения, просто проверьте:
👉 @MobDevPortal
Вы можете отслеживать тепловое состояние устройства, чтобы при перегреве корректировать производительность приложения, просто проверьте:
ProcessInfo.processInfo.thermalStatePlease open Telegram to view this post
VIEW IN TELEGRAM
❤12👍5
The LeakCanary Method
Годный материал про детект утечек памяти с помощью LeakCanary.
В статье рассказывается про процесс исследования, автоматизацию поиска утечек и как использовать YourKit поверх LeakCanary для поиска первопричин серьёзных утечек памяти.
Читать
👉 @MobDevPortal
Годный материал про детект утечек памяти с помощью LeakCanary.
В статье рассказывается про процесс исследования, автоматизацию поиска утечек и как использовать YourKit поверх LeakCanary для поиска первопричин серьёзных утечек памяти.
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍4
The Golden Rule of Coroutine Exceptions
Большая статья с примерами про обработку ошибок в корутинах.
- The
- The
- Parent-Child Relationships (
- Isolating Failures (
- The Global Catcher (
-
- Cancellation is a Special Kind of Exception
- Unstoppable Cleanup with NonCancellable
- Nested Scopes & Propagation
- The Job Hierarchy in Detail
-
- Handling Timeouts
- Exceptions When Awaiting Multiple Jobs
👉 Читать (En)
👉 @MobDevPortal
Большая статья с примерами про обработку ошибок в корутинах.
- The
launch Builder- The
async Builder- Parent-Child Relationships (
coroutineScope)- Isolating Failures (
supervisorScope)- The Global Catcher (
CoroutineExceptionHandler)-
async Within a supervisorScope- Cancellation is a Special Kind of Exception
- Unstoppable Cleanup with NonCancellable
- Nested Scopes & Propagation
- The Job Hierarchy in Detail
-
supervisorScope vs CoroutineScope(SupervisorJob())- Handling Timeouts
- Exceptions When Awaiting Multiple Jobs
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1😁1
This media is not supported in your browser
VIEW IN TELEGRAM
SwiftUI: Анимация с гравитацией, микроэффекты и прогресс по шагам
Туториал: https://youtu.be/F0VH7cKm5do?si=vNbqDxVP2-fNXb83
👉 @MobDevPortal
Туториал: https://youtu.be/F0VH7cKm5do?si=vNbqDxVP2-fNXb83
Please open Telegram to view this post
VIEW IN TELEGRAM
👍14❤6👎1🔥1
Вышел Flutter 3.38
Лучшие новые фичи:
- Hot reload на Web Server
- Конфигурации для веб-разработки
- Улучшенные превью виджетов
- Оптимизации производительности и багфиксы
Все детали о нововведениях → тык
👉 @MobDevPortal
Лучшие новые фичи:
- Hot reload на Web Server
- Конфигурации для веб-разработки
- Улучшенные превью виджетов
- Оптимизации производительности и багфиксы
Все детали о нововведениях → тык
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4🔥2
Совет по SwiftUI
Используйте
Используйте
👉 @MobDevPortal
Используйте
.stroke(), чтобы добавить рамку, выровненную по центру.Используйте
.strokeBorder(), чтобы добавить внутреннюю рамку.Please open Telegram to view this post
VIEW IN TELEGRAM
❤10👍3
Актуальные практики работы в фоне Android-приложений
В статье рассматриваюся актуальные инструменты для работы в фоне, которые работают на последних версиях ОС и как их правильно использовать.
- WorkManager
- JobScheduler
- Foreground Service
- Специализированные API (AlarmManager, DownloadManager, Geofencing)
Читать
👉 @MobDevPortal
В статье рассматриваюся актуальные инструменты для работы в фоне, которые работают на последних версиях ОС и как их правильно использовать.
- WorkManager
- JobScheduler
- Foreground Service
- Специализированные API (AlarmManager, DownloadManager, Geofencing)
Читать
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍1