Kotlin Multiplatform
2.62K subscribers
84 photos
3 videos
407 links
Русскоязычный канал новостей о Kotlin Multiplatform
Download Telegram
Touchlab выпустили библиотеку CrashKiOS, улучшающую информацию о крешах на iOS.

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

Почитать детальнее можно в посте - Kotlin Native iOS Crash Reporting.

А еще в Kotlin 1.3.60 была улучшена поддержка отладочных символов и можно dSYM для релизных билдов получать, чтобы загрузить в fabric/appstore/еще куда-либо.

#libs #posts
Kotlin Multiplatform in action: more than 10 projects for iOS and Android with shared code - наше (IceRock) выступление.

В выступлении:
- Как вводили MPP в работу;
- Как масштабировали на всю компанию (хронологически);
- Что вынесли в опенсорс из внутренних разработок компании (moko библиотеки);
- Показали moko-widgets в работе, на нескольких примерах. Библиотека позволяет построить все приложение из общего кода (сейчас тестируется внедрением в боевой проект).

Так же есть запись live-coding'а с использованием moko-widgets на примере более старой версии библиотеки.

#videos #libs
Завершение цикла постов о KotlinConf:

Going Native - опыт разработки мультиплатформенного игрового приложения.

В выступлении:
- Демо самой игры;
- Что ушло в общий код;
- Архитектура с множеством математических игр на двух платформах;
- Сравнение API между платформами;
- Рисование через общий код;
- Примеры утечек памяти;
- Особенности на стыке Kotlin и Swift (синглтоны, списки).

Sharing is caring - intro to kotlin multiplatform - погружение в мультиплатформу. В целом ничего нового и выделяющегося в выступлении не было.

"Share only what you want when you want" - хорошее выражение силы kotlin multiplatform.

И из последних новостей:
Вышла новая версия Kotlinx.coroutines 1.3.3 с обновлением kotlin до 1.3.61, рядом багфиксов, поддержкой watchOS, tvOS. В новом релизе пока нет поддержки многопоточности для Native (все еще в разработке).

#videos #libs
Kotlin Multiplatform iOS frameworks dependencies - описание как подключить нативный iOS framework в Kotlin/Native.

Разобрано подключение FirebaseML Vision, с использованием cocoapods плагина и cinterop (из-за subspec'ов).

В простых случаях достаточно cocoapods-gradle plugin (раздел Interop в документации Kotlin/Native).

Для тех кому интересна тема подключения нативных библиотек в Kotlin/Native есть пример FirestoreKMP.

#posts #libs
Kotlin Multiplatform in 2020 - обзорная статья про Kotlin Multiplatform и чего можно ожидать в 2020 году.

Braincup - игровое приложение для тренировки памяти и навыков по математике, фокусировке, сделано с общим кодом и реализует UI на Jetpack Compose, SwiftUI.

PeopleInSpace - небольшой проект пример с общим кодом на Kotlin Multiplatform и реализацией UI на Jetpack Compose и SwiftUI.

KInsight Alpha Capture - пример проекта с множеством платформ - iOS, MacOS, WatchOS (SwiftUI), Android (phone and Wear OS), JVM Web Server.

moko-geo - библиотека предсотавляющая доступ к трекингу геолокации из общего кода.

#posts #libs #samples
Summer - kotlin multiplatform библиотека, предоставляющая компоненты для построения приложения с MVP подходом.

В библиотеке есть следующие компоненты:
- View
- Presenter
- UseCase
- Router

View является составной - это два интерфейса, один это State и другой - Methods.

Сразу предоставляются IDE шаблоны для быстрого создания основы.

#libs
Kotlin Multiplatform — MVVM & Clean Architecture - статья-пример реализации мобильных приложений по подходам MVVM и чистой архитектуры.
В примере использовались библиотеки kodein (для внедрения зависимостей), ktor-client, serialization, coroutines, moko-mvvm

И дополнение к предыдущему посту про библиотеку Summer, от автора библиотеки:
iOS часть в процессе тестирования на реальном проекте и возможны небольшие изменения АПИ библиотеки. А так же на момент публикации не было ссылок на плагин и базовые классы для iOS, но сейчас они уже указаны в readme.

#posts #libs
Новые материалы по работе с памятью в Kotlin/Native. Сразу две статьи:
Kotlin/Native - Transferring State
Kotlin/Native - Isolated State

Обе статьи на примерах показывают подходы к работе с изменяемым состоянием в многопоточной среде.
Разобран механизм DetachedObjectGraph и представлены возможности нового релиза библиотеки Stately в той же задаче. Сравнение сделано по производительности.

#posts #libs
firebase-multiplatform - набор библиотек, который предоставляет доступ до Firebase библиотек из common кода.

Уже сейчас доступны под обе мобильные платформы:
• core;
• auth;
• storage.

Так же для мобильных платформ доступен FirestoreKMP (от другого автора).

#libs
Intro to Kotlin Multiplatform and how to share code between Android and iOS – выступление-вводная про kotlin multiplatform. Имеет хороший итог в виде плюсов и минусов, а остальное уже множество раз говорилось.

FlowRedux – библиотека для построения стейтмашины с использованием Flow. Мультиплатформенная, под все возможные таргеты кроме JS. Может быть полезна для построения unidirectional data flow.

#videos #libs