Kotlin Multiplatform
2.63K subscribers
84 photos
3 videos
407 links
Русскоязычный канал новостей о Kotlin Multiplatform
Download Telegram
Включить proguard на андроид просто, и скорее всего он сразу заработает как надо, потому что для этого много сделано внутри, например библиотеки публикуют свои правила для него, и это автоматически подхватывается при сборке. С десктопом все не так, и для каждой зависимости надо будет самому настраивать правила минимизации и обфускации. Но это того стоит!
Статья рассматривает эти проблемы и объясняет пути решения:
https://medium.com/@mike_21858/using-proguard-with-jetpack-compose-desktop-size-reduction-performance-gains-and-pain-481a014c6b0a
https://github.com/ShreyashKore/wonderous_compose

Я уже упоминал этот проект как-то раз. Очень красиво и работает на всех возможных платформах! (не надо только пробовать веб версию на мобильных устройствах)
А теперь там появились встроенные карты на всех платформах - стоит изучить 😉
Я только что опубликовал небольшой гредл плагин, чтобы было проще понимать HMPP структуру в проекте.
просто применяете
plugins {
id("io.github.terrakok.kmp-hierarchy").version("1.1")
}


и вызываете ./gradlew :printHierarchy
☺️
https://github.com/terrakok/kmp-hierarchy
https://touchlab.co/touchlab-build-only-what-you-need

Очередная хорошая статья о KMP от TouchLab! Рассматриваются проблемы скорости билда и пути их решения 🐘
https://funkymuse.dev/posts/kmp-firebase/

Пошаговая инструкция, как интегрировать Firebase в KMP приложение с iOS и Android таргетами 🤠
Введение во все основные концепции корутин с удобными блоками кода и поясняющими диаграммами 🧑‍💻

https://proandroiddev.com/kotlin-coroutines-101-async-programming-in-practice-062b359d502b
https://kotlinlang.org/docs/apple-privacy-manifest.html

Apple выкатила новые требования для публикации приложений! Теперь, если ваше приложение использует некоторые системные API (например platform.posix.fstat), то необходимо при публикации описать причины для этого. Почему это важно? Так как это может делать одна из библиотек, а позаботиться надо вам! (авторы библиотек от Apple туллинга не получили, само собой 👍)

Как пример: библиотека multiplatform-settings или compose-imageloader 🫠

Update: чтобы увидеть проблему в своем приложении можно воспользоваться https://github.com/Wooder/ios_17_required_reason_api_scanner 🔥
Пошаговое руководство по запуску Room на мультиплатформе 🌈

https://johnoreilly.dev/posts/jetpack_room_kmp/
Работает на мобильных браузерах ещё далеко не идеально, но гораздо лучше чем раньше!

https://terrakok.github.io/compose-material-3-gallery/
https://proandroiddev.com/coil-for-compose-multiplatform-5745ea76356f
Подробный разбор настройки Coil для всех поддерживаемых платформ.
С кешами, тюнингом и решением частых проблем
https://android-developers.googleblog.com/2024/05/android-support-for-kotlin-multiplatform-to-share-business-logic-across-mobile-web-server-desktop.html

Первый пост был спонтанным и пустым, поэтому повторю: это огромная веха в развитии котлина - официальный аппрув от гиганта Гугл. Теперь уже стыдно начинать новые проекты на Котлин без мультиплатформы 🥳🤩🔥