Decode Android APK into workspace
decompile_apkDecode an APK into a readable workspace of Smali code, resources, assets, and manifest for later analysis or modification.
Instructions
Decode an APK into a Smali, resources, assets, native-library, and manifest workspace for later analysis or modification. The input APK is read-only, but outputDir is removed and recreated; use analyze_injection_surface next, and do not call this when a valid decoded workspace already exists. Full source decoding requires apktool and Java, while decompileSources=false is limited to resource and manifest inspection.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| apkPath | Yes | Absolute path to target source .apk file to decompile | |
| outputDir | Yes | Destination directory path where decompiled Smali code, resources, assets, and AndroidManifest.xml will be extracted | |
| decompileSources | No | Whether to disassemble DEX files into Smali code (default: true). Set false for resource/asset-only disassembly |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fileCount | Yes | Number of extracted workspace files. | |
| smaliRoot | Yes | Primary Smali root, when source decoding was enabled. | |
| sourceApk | Yes | Absolute path to the input APK that was read. | |
| targetAbis | Yes | Native ABI directories detected in the workspace. | |
| packageName | Yes | Package name parsed from AndroidManifest.xml. | |
| mainActivity | Yes | Resolved launcher activity, when present. | |
| manifestPath | Yes | Absolute path to decoded AndroidManifest.xml. | |
| workspaceDir | Yes | Absolute path to the decoded workspace. | |
| hasNativeLibs | Yes | Whether the decoded workspace contains native libraries. | |
| minSdkVersion | Yes | Declared minimum Android API level. | |
| applicationClass | Yes | Declared application class, when present. | |
| targetSdkVersion | Yes | Declared target Android API level. |