when I decompile an apk I get several folders with weird names like a b a0 b1 and so on. same for Java source and smali file names. Is it possible to reconstruct the source hierarchy and resources like it was before the build?

Specifically I want to know what code is called when I tap on a specific button in the ui.

  • 1
    Those directories represent obfuscated code, usually created by Proguard. You'd need the corresponding Proguard definitions to deobfuscate them – which you can only obtain from those having run the obfuscation (so they are often not willing to provide them to you, should you be able to contact them). I'm not aware of any independent way of deobfuscation – but should there be one, I'm all ears…
    – Izzy
    Commented Jul 10, 2022 at 23:04
  • @Izzy Is there any way to trace back to the code via the message that the button throws on screen when tapped? I was able to grep that string in resource files.
    – user174174
    Commented Jul 10, 2022 at 23:17
  • 3
    Note that we have a sister site Reverse Engineering that may specialize in this topic. They also have android tag.
    – Andrew T.
    Commented Jul 11, 2022 at 2:30
  • 1
    Some times APKs contains some left-over strings that indicate their original names. Jadx is able to read and display those strings. Note that you can not simply rename the folders of a apktool decompiled app, as you would have to correct all references of the renamed classes in all decompiled smali files.
    – Robert
    Commented Jul 11, 2022 at 7:06


You must log in to answer this question.

Browse other questions tagged .