As part of the project to read the contents of the APK file, several plugins were implemented to read commonly used file formats inside the APK archive. Total dismantled Android Package (.apk→.zip), Davlik (.dex), ELF (.so), JavaClass (.class), Android XML (ApplicationManifest.xml), Android Resources (.arsc).
This plugin is a visualization of the result of the ApkReader build, the source code of which is available on GitHub. The plugin interface is available in the menu:
You can view the contents of a package with internal links. Those. if there is a link from AndroidManifest.xml to a file with resources, you can see a specific line from the resources.
In the Dalvik file, the internal structures are in the "Sections" tree element. By double-clicking the left mouse button or the Enter key on the keyboard, a window will open with the dynamic structures of the DEX file. At the time of writing, object decoding is not supported, but is easy enough to read. Example:
[[Ljava/lang/String; in decoded string:
MaxArrayDisplayFalse — Max array length that will be displayed.
ShowAsHexValueFalse — Display digits as decimal or hexadecimal.
ShowBaseMetaTablesFalse — Display base tables in dynamic structures instead of strongly typed ones (Closer to binary file type).
MonitorFileChangeFalse — When updating a file on the hard disk, the file will be automatically updated in all open windows for displaying data from the current file.
Type GetEntityType()— Get DexReader type
Object CreateEntityInstance(String filePath)— Create instance of DexReader type transfer as argument path to file
String GetSearchObjects(String searchPath)— Return files array with extension *.dex from folder.
Starting from version 2.0 plugin supporting- specific android format