免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1440 | 回复: 0

自动把apk反编译的脚本 [复制链接]

论坛徽章:
0
发表于 2011-01-07 16:39 |显示全部楼层

此文续Android apk 文件反编译, 当时说要写个脚本做个自动化的方法来解压.apk文件.

此脚本早己写好,只是一直未发出来.现在发出现来,供参考或使用.里面有注释,看不懂的就没办法了.

把下面脚本拷出来保存为XXX.bat文件,运行前先把apk文件拷贝到与此脚本同一路径.然后运行XXX.bat yours.apk.

REM this script is used to decompress the .apk file
@echo off
REM 此脚本传入的要解压的文件名
set EXT_FILE=%1
REM apktool 和 dex2jar 两个工具的解压路径
set DECOAPK_HOME="E:\zy_share\tools\Android"
REM 解压后的文件所在路径
set TMP_DIR=temp
REM dex2jar工具的路径
set DEX2JAR_HOME="%DECOAPK_HOME%\dex2jar-0.0.7.3-SNAPSHOT"
@echo on
REM 复制一个 apk 文件,后缀名为 .zip
copy "%EXT_FILE%" "%EXT_FILE%.zip"
REM 解压此 .zip 文件到 当前的 temp 目录下.
unzip %EXT_FILE% -d %TMP_DIR%

REM 用 apktool 解压 .apk 文件到 temp 目录中
cd temp
java -jar %DECOAPK_HOME%\apktool\apktool.jar decode ../%EXT_FILE%


REM 解压 classes.dex 文件
set CLASSPATH=
FOR %%i IN ("%DEX2JAR_HOME%\lib\*.jar") DO CALL "setclasspath.bat" %%i
echo %CLASSPATH%
java -cp "%CLASSPATH%" pxb.android.dex2jar.v3.Main classes.dex

REM 解压 classes.dex.dex2jar.jar 文件
mkdir classes
cd classes
jar -xf ../classes.dex.dex2jar.jar
cd ..
jad -o -r -f -ff -s java -d src classes/**/*.class

cd ..


别高兴得太早,转出换过程中可能会有jad.exe转不了的文件,那就把那就手动做最后一点转换吧.可以把出错的.class文件删除,再转.转完可能也通不过编译.但代码的大致结构和类都出来了.有第三类库的,你就直接去下载回来替换掉就行了.

以上提供的方法请大家自律地使用于合法用途.

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP