Tutorial navigation

  • How to decompile Apk for Android
  • Android Apk decompiler tutorial (2
  • In Android Studio, you can debug smALI code

background

In the analysis of competing products, it is necessary to decompilate the apK of competing products and analyze the implementation methods of competing products’ functions.

APK decompiler tool comparative analysis

apktool

  • The address of the project: ibotpeaches. Dead simple. IO/Apktool/doc…
  • advantages
    • Apk can be decompiled and compiled, and APK repackaging needs to rely on this tool
  • disadvantages
    • Decompiled code requires a tool to read

bytecode-viewer

  • Project address: github.com/Konloch/byt…
  • Advantages:
    • Integrated apkTool, JD-GUI and so on
    • Support for a variety of SMALI code decompiler
    • Support smALI code and Java code comparative analysis
  • disadvantages
    • Redecompilation is required each time you view it
    • Search is very difficult to use

jadx

  • Project address: github.com/skylot/jadx
  • Advantages: ApK can be exported directly as a Gradle project
  • Disadvantages: Same as bytecode-viewer (1) to export APK as gradle project

    (2) Analyze the exported project in AS

Tools recommended

Each tool has its advantages and disadvantages. To achieve the highest efficiency, select the most appropriate tool in the corresponding scenario. The following tools are recommended for different scenarios

(1) APK compilation and decompilation: apkTool

(2) SmALI code analysis: Bytecode-viewer

(3) Java code analysis: JADx Gradle project export +AS code analysis

  • Export once, analyze forever, don’t have to decompile every time