Can anyone help me about converting Kotlin code in Android Studio to Java?
I went through the below process:
Tools >> Kotlin>> Decompile Kotlin to Java
But the "Kotlin to Java" option is disabled. What should I do?
Can anyone help me about converting Kotlin code in Android Studio to Java?
I went through the below process:
Tools >> Kotlin>> Decompile Kotlin to Java
But the "Kotlin to Java" option is disabled. What should I do?
Currently Tools >> Kotlin>> Decompile Kotlin to Java
is enabled only for compiled Kotlin classes (.class
, not .kt
extension) located at app/build/tmp/kotlin-classes/
after a successful build.
A note to the @Uriel Frankel's workaround:
If Tools >> Kotlin >> Show Kotlin Bytecode >> Decompile button
is disabled (or not shown) the Java Bytecode Decompiler
plugin should be installed: Preferences >> Plugins >> search for
Java Bytecode Decompiler` >> check the plugin & press OK.
Tools >> kotlin >> Show Kotlin bytecode >> Decompile
Seems like a bug.
Tools -> Kotlin -> Decompile Kotlin to Java
Was actually disabled for me too even after a successful build (In my side Android Studio v3.2) so, I went through this:
Click on the Kotlin (Compiled class):
Selected Tools -> Kotlin -> Show Kotlin Bytecode
Then kotlin bytecode window appeared:
Made JVM 8 Target as selected and then decompile gave me the java class.
Note that this happened when Java Bytecode Decompiler
plugin was enabled on the Android Studio.
Update:
This however might have some issues even after converting to java and perhaps, we should wait for the newest releases.
I followed Onik's answer above.
The Java Bytecode Decompiler was automatically bundled. I opened the .class file in Android Studio, and selected Tools >> Kotlin>> Decompile Kotlin to Java.
After waiting several minutes, Android Studio told me
The file is too large: 50.78 MB. Showing a read-only preview of the first 2.56 MB
and it opened a file MyKotlinClass.decompiled.java, most of which is unintelligible to me.
MyKotlinClass is approximately 300 lines long. At this point, manually re-writing the file as Java code is looking like the better option.
© 2022 - 2024 — McMap. All rights reserved.