These tools aim to restore Dalvik assembly from the compiled bytecode:
- Smali/Baksmali: Smali (assembler in Icelandic) is the name of the assembler tool that can be used to compile Dalvik instructions to the bytecode and, in this way, build full-fledged DEX files. The corresponding disassembler's name is Baksmali; it can restore Dalvik assembly code from bytecode instructions as well as dump a DEX header structure and deodex files. Both tools operate with text files storing assembly code that have .smali file extensions.
There were a handful of changes to the format between 1.* and 2.* SMALI files. To convert existing SMALI files to the new format, you can assemble the old ones with the latest Smali tool, version 1, and then disassemble them with the latest Baksmali tool, version 2. - Apktool: A wrapper around the Smali tool; it provides the functionality to easily process APK files:
Figure 9: The interface of the Apktool
Apart from these, there...