~/talk

Using Kotlin/JS and Kotlin/Native on Android

Talkat droidcon NYC 2019 · 2019-08-26..08-27· [kotlin]
slides:none on file

Demonstrates compiling the same Kotlin implementation for JVM, JavaScript, and native and swapping implementations behind an interface so Android code can call a JS or native version without changing app logic. Uses Kotlin Multiplatform and Gradle to emit JVM/JS/native artifacts, a DuckTape engine to host JS on Android, manual JNI plumbing for native, and Kotlinx.serialization to pass complex objects. Builds a Cash-like second-line string renderer, runs it on all three backends successfully, but notes packaging, name-mangling and main-thread blocking issues. DuckTape engine JNI bridge Kotlinx.serialization

AI-written summary · about

  1. 0:00Introduction
  2. 1:09JavaScript on Android
  3. 6:42Native code on Android
  4. 8:10Kotlin Multiplatform basics
  5. 9:12Abstractions and interfaces
  6. 10:36Combining the concepts
  7. 12:39Demo setup
  8. 15:49Java bytecode implementation
  9. 16:30JavaScript backend with DuckTape
  10. 21:03Switching to JavaScript
  11. 22:05Native backend challenges
  12. 25:13Roadblocks and solutions
  13. 28:04Serialization for complex objects
  14. 31:33When to use this approach
  15. 33:18Summary and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.