Комментарии 21
А возможно ли вместо котлина на Java писать подобным образом, чтобы кроссплатформенно было?
Насколько я понимаю нет, потому что Java компилируется только в байт-код для JVM.
А Kotlin/Native, как раз фича которая позволяет компилировать kotlin-код в бинарники под разные платформы.
А Kotlin/Native, как раз фича которая позволяет компилировать kotlin-код в бинарники под разные платформы.
Интересно, как тогда компилируются проекты на LibGDX, которые позволяют писать на Java под iOS?..
Если я правильно понял то, что написано по этой ссылке, то у LibGDX есть своя виртуальная машина для java которую они запускают при старте приложения на iOS
Раньше под iOS собирали с помощью RoboVM, но его перестали поддерживать и теперь есть два варианта: опенсорсный форк RoboVM от MobiDevelop (инструкция на гитхабе) или некая Multi-OS Engine.
Google говорит, что есть примеры запуска java кода на iOS с помощью RoboVM. По идее можно это связать с flutter+dart2. Зависит от RoboVM насколько он работает со свежими релизами iOS
А разве не логичнее платформонезависимый код писать на dart, а реализацию платформенных фишек на kotlin/swift? Ведь kotlin native ровно же также не даст пользовать фишки платформы как и dart.
Почему не даст? Если эти фишки можно использовать из Си, то и из Котлина можно.
Основные причины, почему я выбрал kotlin
- Есть ktor для сетевых запросов, который можно положить в общую бибилиотеку
- Для меня очень важно что есть LiveData, написанная на Kotlin, это значит, что я могу даже в общей библиотеке использовать reactive-подход
Если я правильно понял, единственная причина по которой в проекте есть Kotlin/Native это то, что автор знаком с котлином. По хорошему, тут все должно быть на дарте, но все хотят писать на котлине, а не на дарте и как результат — «вот это вот все».
Интересно, спасибо.
Но уж слишком муторно выглядит со стороны пока.
Но уж слишком муторно выглядит со стороны пока.
Подскажите, пожалуйста, итоговый размер полученных бинарых файлов, для установки в android и iOS для debug и release конфигураций.
Очень интересно! Что вы использовали вместо java-библиотек? Откуда брали контейнеры, таймера и прочее?
Добрый день. Про какие именно библиотеки идёт речь? Например для сети ktor, для ReactiveX -> LiveData
Насколько читал про kotlin/native, он не может использовать инфраструктуру JVM и, соответственно, все классы java. Остаётся либо чисто котлиновские библиотеки, либо котлиновские порты на нативные библиотеки. Вот и интересуюсь, насколько комфортно использовать Native вне JVM.
Сейчас передо мной стоит задача на котлине, и пока в раздумьях — то ли под JVM продолжать, то ли на Native перейти для интереса
Сейчас передо мной стоит задача на котлине, и пока в раздумьях — то ли под JVM продолжать, то ли на Native перейти для интереса
В сентябре 2018 была так же публикация "Fast Prototypes with Flutter + Kotlin/Native":
https://tech.olx.com/fast-prototypes-with-flutter-kotlin-native-d7ce5cfeb5f1
Было разработано реальное приложение для конференций, но к сожалению исходный код не был выложен (приватная разработка), но автор достаточно подробно рассказал про архитектуру.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Приложение для iOS и Android на Kotlin + Flutter UI