-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathapkedit.bat
More file actions
58 lines (47 loc) · 1.33 KB
/
Copy pathapkedit.bat
File metadata and controls
58 lines (47 loc) · 1.33 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
@echo off
setlocal EnableDelayedExpansion
if "%~1"=="" (
echo Usage: %~nx0 ^<apk-file^>
exit /b 1
)
set "APK_FILE=%~1"
set "DEX2JAR_DIR=C:\path\to\dex2jar\folder" & :: <-- adjust this to your dex2jar folder
if not exist "%APK_FILE%" (
echo Error: APK file not found: %APK_FILE%
exit /b 1
)
if not exist "%DEX2JAR_DIR%\d2j-dex2jar.bat" (
echo Error: d2j-dex2jar.bat not found in: %DEX2JAR_DIR%
exit /b 1
)
set "APK_DIR=%~dp1"
set "APK_BASENAME=%~n1"
set "WORK_DIR=%APK_DIR%%APK_BASENAME%"
set "JADX_DIR=%APK_DIR%%APK_BASENAME%-jadx"
mkdir "%WORK_DIR%" 2>nul
mkdir "%JADX_DIR%" 2>nul
echo [*] Output dir: %WORK_DIR%
echo [*] Extracting all files from APK...
tar -xf "%APK_FILE%" -C "%WORK_DIR%" 2>nul
if ErrorLevel 1 (
echo Falling back to unzip...
unzip -n "%APK_FILE%" -d "%WORK_DIR%"
)
echo [*] Extraction complete.
set "JAR_FILES="
for %%F in ("%WORK_DIR%\classes*.dex") do (
if exist "%%~fF" (
set "BASENAME=%%~nF"
set "JAR_OUT=%JADX_DIR%\!BASENAME!.jar"
echo [*] Converting %%~fF ^> !JAR_OUT!
call "%DEX2JAR_DIR%\d2j-dex2jar.bat" "%%~fF" -o "!JAR_OUT!"
set "JAR_FILES=!JAR_FILES! "!JAR_OUT!""
)
)
if "%JAR_FILES%"=="" (
echo Error: No dex files found in APK
exit /b 1
)
echo [*] Launching jadx-gui...
jadx-gui -Pjadx-jaredit.mode=apk %JAR_FILES%
endlocal