Mobile Native ️️ – Telegram
Mobile Native ️️
5.61K subscribers
1.13K photos
20 videos
3 files
1.28K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://news.1rj.ru/str/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
Актуально ли размещение тематических IT-материалов, после порции утренних новостей?
Anonymous Poll
74%
Да
26%
Нет
🕊13😁8
Почему исключения в Kotlin Coroutines это сложно и как с этим жить?

Статья про обработку исключений в корутинах: особенности обработки исключений, try-catch, CoroutineExceptionHandler, launch, async, coroutineScope, supervisorScope.

Читать (Ru)
👍18🔥4
Design of Kotlin Coroutines

Еще одна, большая статейка с детальным разбором корутин. Как создаются корутины, как работают под капотом, suspend функции, сoroutine state machine.

👉 launch()
👉 start()
👉 invoke()
👉 startCoroutineCancellable()
👉 resumeWithCancellable()
👉 resumeWith()
👉 invokeSuspend()
👉 Summary of coroutine construction

Читать (En)
👍17🔥4🙏1
The Android Platform: The 2022 Android Developer Roadmap

Большая серия статей на основе Android Developer Roadmap, в которых разбираются как базовые штуки типа платформы Android, так и основные компоненты, архитектура, популярные библиотеки, подхоходы к разработке и вот это вот всё.

👉 Part 1: The Android Platform
👉 Part 2: App Components
👉 Part 3: App Navigation and Jetpack
👉 Part 4: Design Patterns and Architecture

Саму карту в виде схемы можно посмотреть в репозитории → Android Developer Roadmap 2022

В избранное
🔥13👍6😐3👏1
Caching with OkHttp Interceptor and Retrofit

Простой гайд как подрубить кеширование запросов в OkHttp.

Но такой подход нужно использовать аккуратно, т.к. можно напороться на неактуальные данные.

Насколько я помню OkHttp из коробки может обрабатывать кешированные запросы по коду 304 NOT MODIFIED, но для этого нужно, чтоб ваш бэк работал должным образом и при инициализации OkHttp нужно подрубить сам кеш вот так:

OkHttpClient.Builder()
.cache(Cache(context.cacheDir, CACHE_SIZE))
.build()

Читать (En)
👍16🔥3🤔3
Неочевидное про Fragment API. Часть 2. (Не) создаем инстанс

У Тинькофф вышла вторая часть из цикла статей "Неочевидное про Fragment API" про то, как под капотом FragmentContainerView создаются фрагменты, как использовать свою кастомную фабрику для создания фрагментов, транзакции и т.д.

Читать (Ru)
👍13🔥1
How To Replace The Standard Crash Dialog With A Custom Error Screen?

Полезная статья о том, как сделать свой кастомный экран при возникновении креша. Для тех, кто не сталкивался, делается такое через кастомный глобальный ExceptionHandler → Thread.setDefaultUncaughtExceptionHandler(…).

Реализация своего хендлера может быть достаточно полезна, например собрать какие-нибудь логи или доп. инфу о девайсе, настройках и пульнуть на свой бэк. Либо же можно заложить какую-нибудь доп. логику.

Читать (En)
👍21🔥5😁1
Deadlocks in Swift explained: detecting and solving

Неплохая статья, про взаимные блокировки(deadlocks) в Swift. Что такое deadlock, причины возникновения, способы обнаружения и возможные варианты решения.

Читать (En)
🔥3👍2🙏1
New Logcat in Android Studio Dolphin.

Несколько статей про новые фичи Logcat в новой версии Android Studio Dolphin.

👉 NEW Logcat in Android Studio Dolphin is Amazing!
👉 New Android Logcat: Top 5 features
👍9🔥3
Логи в iOS, эпизод 1: os_log

И снова про логи, только на этот раз про логгирование в iOS.

Ребята из Dodo Mobile делятся опытом работы с логами с помощью Console.app.

👉 фильтры
👉 уровни логов
👉 источник лога
👉 os_log

Читать (Ru)
👍6🔥4🍓31
Forwarded from Записки разработчицы (Anna Zharkova)
Итак, этот момент настал 🔥 Релизнулся Kotlin 1.7.20, а вместе с ним и новая модель управления памятью:
https://blog.jetbrains.com/kotlin/2022/09/kotlin-1-7-20-released/

Эпоха статей и докладов про воркараунды и новые костыли закончилась. Время использовать KMM на бою 🔥 если вы еще сомневались и ждали подходящего момента 😉

Также в новой модели памяти улучшили механизмы асинхронного и конкурентного выполнения, добавили поддержку кэша компилятора, что серьезно уменьшает время компиляции, ну и, разумеется, убрали все freeze

Что еще принесла нам новая версия:
- стабилизация K2 плагина компилятора (JVM-only пока)
- новый оператор ..< (экспериментальная фича)
when (value) {
in 0.0..<0.25 -> // first quarter
in 0.25..<0.5 -> // second quarter
in 0.5..<0.75 -> // third quarter
in 0.75..1.0 -> // last quarter <- note closed range here
}

- Generic inline classes
- Оптимизация кейсов для делегированных свойств (крутой механизм, если еще не пробовали)
- Поддержка JVM IR бэкенда для kapt заглушек

Также появляется возможность кастомизации Info.plist файлов в Kotlin Native
🔥21👍8🎉31
Что посмотреть на выходных. Подборка полезностей👇

Давно не публиковал видосы. На этой недели опубликовали множество докладов с различных конференций, которые решил собрать в один пост. Ну и попутно докинул несколько тематических видосов 😉

👉 Mobius 2022 Spring
👉 Droidcon New York 2022
👉 TechTrain 2022 Spring
👉 The NEW Kotlin 1.7.20: Unboxing and Review
👉 Powerful: Compose toolkit - MAD Skills
👉 Now in Android #69
🔥8👍2👏1
Неочевидное про Fragment API. Часть 3. Навигация

Третья часть от Тинькофф из цикла "Неочевидное про Fragment API", в которой рассматривается на мой взгляд довольно важная тема – Навигация, а именно некоторые подкапотные штуки multi-backstack, который не так давно появился и OnBackPressedDispatcher.

Читать (Ru)
🔥6👍4👏1
Jetpack Compose Clean Navigation

Пример реализации чистой навигации в Jetpack Compose.

Читать (En)
👍132🔥1🤔1💩1
Jetpack compose: Cool Button Click Effects

Статейка про то, как в Jetpack Compose реализовать различные эффекты нажатия кнопки.

👉 Pulsate effect
👉 Press Effect
👉 Shake Effect
👉 Animate the shape

Читать (En)
👍15❤‍🔥2🔥2
Вчера разгребал избранное и наткнулся на тред от Евгения Мацюка, в котором он собрал различные ресурсы для подготовки к собесам в западные компании.

Там достаточно много полезных ресурсов, включая такие темы как Mobile System Design, HTTPS, Backend System Design, Solution Architecture и т.д.

Возможно кому-то пригодится.

Читать (Ru)
🔥22👍2🖕2👏1🤮1💩1
Build a Custom Design System Using Jetpack Compose

Статья про организацию дизайн-системы в Jetpack Compose.

Читать (En)
👍9🔥2🤔2
An iOS Engineer learns about Android’s Jetpack Compose and loves it.

Еще одна статейка из избранного, в которой сравнивают два декларативных фреймворка Jetpack Compose и SwiftUI в работе с лэйаутами, состоянием и инструментами.

Наверняка многие уже видели эту статью, но все таки закину для тех, кто еще не читал.

Читать (En)
👍9🔥31🤩1
Best Practices in Kotlin

Очередная статья с best practices в Kotlin. В целом ничего сверхъестественного там нет, но возможно что-то для себя выделите.

И еще несколько статей на эту тему 👇

👉 Kotlin — How to write code more readable and Clean, Best practices (En)
👉 Kotlin Best Practices (Ru)

Читать (En)
👍14🔥1🤔1🤩1
Long-running tasks in parallel with Kotlin Flow

Пример того, как можно реализовать выполнение длительныех задач параллельно и агрегировать результат с помощью оператора zip в Kotlin Flow.

Читать (En)
👍8🔥2👏1