R8 minification is essential for this, because otherwise the Kotlin standard library is too big and results in the app compiling to multiple dex files. It's not impossible to load multiple dex buffers, but let's keep it simple here.