反编译安卓软件教程

反编译安卓软件

虽然把软件的扩展名改为zip就能读取,但是那里面的代码是加密过的,只有安卓手机能读取
反编译安卓软件教程_第1张图片
如果要读取或是修改就需要反编译了
反编译apk前,你需要安装Java,安装完成后就可以开始反编译了
这里使用apktool反编译
第一步:安装、配置apktool
下载反编译程序 apktool
然后创建一个txt文档,打开并在里面输入:

@echo off
setlocal
set BASENAME=apktool_
chcp 65001 2>nul >nul

set java_exe=java.exe

if defined JAVA_HOME (
set java_exe="%JAVA_HOME%\bin\java.exe"
)

rem Find the highest version .jar available in the same directory as the script
setlocal EnableDelayedExpansion
pushd "%~dp0"
if exist apktool.jar (
    set BASENAME=apktool
    goto skipversioned
)
set max=0
for /f "tokens=1* delims=-_.0" %%A in ('dir /b /a-d %BASENAME%*.jar') do if %%~B gtr !max! set max=%%~nB
:skipversioned
popd
setlocal DisableDelayedExpansion

rem Find out if the commandline is a parameterless .jar or directory, for fast unpack/repack
if "%~1"=="" goto load
if not "%~2"=="" goto load
set ATTR=%~a1
if "%ATTR:~0,1%"=="d" (
    rem Directory, rebuild
    set fastCommand=b
)
if "%ATTR:~0,1%"=="-" if "%~x1"==".apk" (
    rem APK file, unpack
    set fastCommand=d
)

:load
%java_exe% -jar -Duser.language=en -Dfile.encoding=UTF8 "%~dp0%BASENAME%%max%.jar" %fastCommand% %*

rem Pause when ran non interactively
for /f "tokens=2" %%# in ("%cmdcmdline%") do if /i "%%#" equ "/c" pause

(如图)反编译安卓软件教程_第2张图片

然后保存退出,退出后再把扩展名改为apktool.bat;最后把apktool.bat和apktool_2.4.1.jar给移动至C:\Windows配置就完成了。
第二步:反编译
按下Win+R打开“运行”窗口,输入cmd打开命令提示符,在里面输入代码:apktool d -f <需要反编译的软件目录><目录里的软件名称> -o <编译后放入的目录>开始发编译
实践:
需要编译的软件名:动态壁纸.apk
输入命令:apktool d -f c:\1\动态壁纸.apk -o c:\2
那么编译好的文件就会出现在c:\2里,而c:\1里的还是源文件
编译成功后的代码:反编译安卓软件教程_第3张图片
反编译完成后可以得到这些文件夹
(每个软件反编译后的文件夹基本都不一样,但是一定会有res文件夹和AndroidManifes.xml文件)反编译安卓软件教程_第4张图片
反编译后的文件也可以查看了反编译安卓软件教程_第5张图片

第三步:打包
输入apktool b <编译后的文件夹>,按下enter后自动开始打包
实践:
打包:动态壁纸(文件夹)
apktool b c:\2
“c:\2”指的是反编译后得到的文件夹
打包完成时出现的代码反编译安卓软件教程_第6张图片
打包后的文件在c:\2\build\apk如图:反编译安卓软件教程_第7张图片
但是由于程序的Bugs,像assets之类的文件夹不会出现在c:\2\build\apk里,需要手动移至进文件夹;然后把这些给压缩为zip(先不要急着把扩展名改成apk)
第四步:签名
1、首先下载Auto-Sign,然后解压至任意文件夹即可(解压后的样子如图);反编译安卓软件教程_第8张图片

2、把打包好的文件夹放入目录里(如图)反编译安卓软件教程_第9张图片

3、输入java -jar signapk.jar testkey.x509.pem testkey.pk8 <需要签名的文件> <签名好的文件名>开始编译
实践:
还是以动态壁纸为例,把刚刚打包好的zip放入文件夹里反编译安卓软件教程_第10张图片
然后输入java -jar signapk.jar testkey.x509.pem testkey.pk8 动态壁纸 动态壁纸_已签名开始编译
反编译安卓软件教程_第11张图片
最后只需要把扩展名改为apk就可以正常安装至你的手机了

如果你任然不会反编译,那么你可以尝试一下这个
安卓逆向助手
下载后使用也简单,自带反编译、打包、签名反编译安卓软件教程_第12张图片

你可能感兴趣的:(反编译apk,反编译,反编译,apk)