smali2java is a tool that can decompile smali to java sources.
What is smali? smali is a readable form of Android bytecode. It can be called decompilation language of Android bytecode. Android application package, apk or jar, can be decompiled to smali by baksmali or apktool.
smali2java is based on smali files generated by apktool v1.5.0 with baksmali v1.3.4. smali2java depends on information such as code line number(.line keyword) and varialbe name(.local keyword) etc. Thus it can furthest reduce orignal java source code. The reduced java code will keep orignal variable names. The code sequence will be the same as orignal java code too. And also for this reason, this tool has limitaion. It only works for those smali files that have line numbers and varialbe name. Some java compiler options can eliminate these information from bytecodes.
smali2java uses apktool for convertion from Android bytecode to smali. It uses CCrystalTextView, written by Stcherbatchenko Andrei, as the java syntax highlighting component. Thanks to authors of these software and source codes for their great work.
ActivityBase.smali (smali file)
ActivityBase.java (original java file)
ActivityBase.java (java file generated by smali2java)
Latest Version: 22.214.171.1248