Salathiel Genese
07/11/2024, 6:45 PM./gradlew :composeApp:assembleRelease
but the resulting APK couldn't be installed b/c it was invalid
• I built a Desktop (Linux) JAR using ./gradlew :composeApp:desktopJar
but I couldn't launch the app using java -jar path/to/todo-app.jar
(using javap
to find which of the generated class files could be the main class, I ass MainKt
to my java -jar
command but to no avail)
• I was not able to find the documentation entry that addresses these build issues
• I was not able to find any online documentation that catalogs widgets available (maybe I needed some Android background first?! I dunno)
Thanks beforehand.ian.shaun.thomas
07/11/2024, 6:47 PMassembleRelease
will only work if you've setup a keystore which is entirely on the android plugin side, not kotlin. assembleDebug
will create usable apks using a dev keystoreSalathiel Genese
07/12/2024, 6:49 AMassembledDebug
(the next best thing) and I had the same behaviour.Salathiel Genese
07/13/2024, 10:10 AM./gradlew :composeApp:assembleDebug
output a working debug APK.
For my Desktop build, I found one task that did it:
• ./gradlew packageReleaseUberJarForCurrentOs
which gives me a uber JAR
• I'm well versed into Java so I went native from that Uber JAR using GraalVM native-image -jar /path/to/uber.jar
and voila
On the UI widgets, I found some entries (although without visual illustrations):
• https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-android-only-components.html
• https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-desktop-components.html
• https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-swiftui-integration.html
• https://www.jetbrains.com/help/kotlin-multiplatform-dev/compose-uikit-integration.html
My next steps will be to publish the app on the Google Play Store (which has always to hardest and unsuccessful step for me 😭).
✌️