https://kotlinlang.org logo
#getting-started
Title
# getting-started
d

Dave Trollope

02/15/2021, 9:34 PM
Hey folks, I started my Kotlin journey over christmas, and decided this month to rewrite a RubyMotion based app I have in Kotlin and support both iOS and Android which I never succeeded with in RM. So after researching, I dived in to KMM, (realizing its still in alpha state) and have really struggled to get started. Following the https://kotlinlang.org/docs/mobile/getting-started.html page left me with more questions than answers. Part of my challenge was, which IDE to use from the outset (I have a jetbrains toolbox license) and got the impression I should start with IntelliJ and the KMM plugin. After struggling to get https://github.com/Kotlin/kmm-sample doing anything, I realized that Android Studio seems to be the place to start. Switching to that I got Android working very quickly, but fell foul of the known issue where the iosApp doesn't appear in the Run Configuration. It still seems unclear to me if I should be relying on Xcode for iOS and AS for Android, or wait for the fixes to the iOS run config related issues (it is alpha after all). For now, I'm switching to Kotlin Native for iOS with a plan to port back in to KMM when its more stable. So I have 2 questions: 1. Where is the appropriate forum to get feedback to the maintainers of the KMM getting started guide? Maybe even contribute if I can, as I learn. 2. When I get a native iOS app built, am I setting myself up for a big challenge switching to KMM to build a single app that supports Android too?
m

mkrussel

02/15/2021, 9:45 PM
My understanding is the Kotlin native plugin is deprecated, so I would start with doing KMM. I've not tried to use the KMM plugin to run the iOS app. My workflow has been use Android Studio for all the Kotlin code, and then switch over to XCode when I need to work on the UI or run the app. I'm also surprised the kmm-sample didn't work with Intellij.
d

Dave Trollope

02/15/2021, 9:51 PM
@mkrussel I'm sure my inexperience in this land resulted in me doing something wrong (or not doing something basic) which perhaps we can improve docs around. I don't understand how native plugins can be deprecated when KMM is still in alpha. To a beginner, I feel like I'm missing some big concepts.
Looks like the native project has more samples to get started with, which is why I'm starting there. If these have already been ported to KMM that would be useful.
m

mkrussel

02/15/2021, 9:54 PM
I don't think kotlin native ever got out of beta, after kmm started getting going, they switched effort to that. I also had a lot of trouble getting started with KMM. Documentation was constantly getting out of date.
d

Dave Trollope

02/15/2021, 9:56 PM
🤔 (while I wait for the 60 minute initial build of native)
b

Brian Dilley

02/15/2021, 10:08 PM
I hope Kotlin Native doesn’t get scrapped. I wanted to use that for some non-mobile applications
m

mkrussel

02/15/2021, 10:10 PM
Everything you can do with the Kotlin native plugin you can do with the Kotlin MPP plugin, you just list the native platform you are using as the only platform. The concept is still there, it's just the gradle plugin that got replaced. https://github.com/JetBrains/kotlin-native/blob/master/GRADLE_PLUGIN.md
d

Dave Trollope

02/15/2021, 10:10 PM
@Brian Dilley I'm pretty sure its underpinnings are central to KMM so thats quite unlikely - perhaps just a packaging change.... (as mkrussel alludes to with the plugins)
2 Views