apktool反编译详细使⽤教程
安装反编⼯具地址apktool⼯具包下载地址
apktool.rar
1.⾸先安装需要JAVA环境,先下载JDK/JRE,已经有JAVA环境的可跳过此步
java JDK:
java JRE:
还得设置JAVA环境变量
CLASSPATH .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
JAVA_HOME C:\Program Files\Java\jdk1.6.0_10 解释JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径Path %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
环境变量配置好了,我们就可以反编译了,(如果有不明⽩的有两种⽅法,1,请教我,2在论坛搜搜怎么设置JAVA环境变量)
反编译的使⽤反编译⼯具,⽹上有很多,有APKTOOL,Doapk ,,你们可以随便下载⼀个,地址我就不提供了,你们⾃⼰搜索⼀下,上百度,上论坛上搜都有的,但apkTOOL⼯具必须包含⼀下⼏个
下载完成反编译⼯具后,验证是否安装成功,点击开始菜单,运⾏,输⼊CMD回车
按⼀下回车出现
,在输⼊APKTOOl,输⼊apktool,要看腻把apkTOOL安装在哪个盘,举例我的,我是安装在D盘APkTOOL⽂件下,先在cmd下输⼊D:回车,在输⼊CD apktool,转⼊apktool⽂件夹下,输⼊apktool 出现如下反应,
,说明你安装成功了,可以进⾏APK反编译了,下⾯我已反编译SystemUI.apk为例。
⾸先的知道⼀下⼏条指令的意思
1,apktool d SysteUI.apk 12意思是将SystemUI.apk解包到12⽂件下,12⽂件夹不⽤创建,会⾃动⽣成
2,apktool b 12打包12⽂件夹(将会⾃动把12⽂件夹⾥的修改过得APK解包后修改完后⾃动打包,⽣
成resources.arsc,⽂件,这就是我们反编译的主要⽬的,当然还有其他⽬的,后⾯将会说明怎么apktool需要反编译的⽬的,⽣成的⽂件。
3,apktool if framework-res.apk这条语句很重要很多时候我们容易忽略这条语句导致打包不成功,这句语句的意思是,有些时候我们解包apk⽂件需要⽤framework-res.apk(framework是指系统框架。有时也会⽤到apktool if twframework-res.apk,同样我们只需在前⾯输⼊就⾏。当然得把framework-res.apk 这个⽂件⽬录下。
4,apktool if twframework-res.apk ,当然 twframework-res.apk 也应该放在⽂件⽬录下,不如反编译会⽤到
知道这四条语句我们就可以进⾏反编译了。
已反编译SystemUI.apk为例,,下⾯开始讲解
现在cmd下输⼊apktool if framework-res.apk(并把framework-res.apk 放在⽂件⽬录下)apktool if twframework-res.apk( twframework-res.apk 也应该放在⽂件⽬录下)其实这两部就是搭建安卓系统环境,输⼊完后在解包,apktool d SystemUI.apk 12就⾏了
这句话很关键要不然你解包会出现如下问题,
这也是我曾经遇到过得问题。疑惑了我好久,终于到原因了。
当然还有⼀些⼈会遇到
apk中有美化过的图⽚有时会出错,再把官⽅apk的drawable.hdpi覆盖到你打包的那个apk中反编译就不会出错了或者把不会出错的图⽚替换掉出错的图⽚就可以了,不管是什么图⽚,替换到⾥⾯就⾏,因为最后我们不会⽤到这⾥⾯的图⽚只要它不出错就⾏。
1:直接⽤压缩软件打开这个APK,从⾥⾯提取⼀个没有报错的9png,这⾥选取btn_default_small_normal.9.png。复制⼀份原始的SystemUI.apk。
2,、将刚刚提取的btn_default_small_normal.9.png重命名为APKTOOL⾥报告有问题的⽂件名。第⼀个为title_bar_portrait.9.png,然后⽤这个
title_bar_portrait.9.png替换SystemUI.apk⾥对应的⽂件。
重复上⾯第3步直到所有APKTOOL⾥报错的⽂件都被替换完成
3 、再次⽤APKTOOL反编译SystemUI.apk,可以看到这次反编译就正常了
4.。。按⾃⼰想做的进⾏修改
5、编译修改后的SystemUI⽂件夹,,.修改你想修改的东西。
6,apktool b 12打包编译的⽂件夹,编译完成后产⽣12\build\apk ⽂件夹,改动后的⽂件替换到SystemUI.apk⾥⾯。其中resources.arsc必须选择仅存储的压缩⽅式,其他⽂件⽆所谓。
7。替换完成后SystemUI.apk就可以⽤了。
到这⾥反编译就基本完成了,⼤家想要学美化的可以上论坛,他们那⾥挺多美化的。
在说⼀下反编译其他的,替换,图⽚是可以随便替换的,APK⽂件⾥多图⽚是⽆所谓的,还是可以⽤的,
关于替换XML⽂件的问题,XML⽂件有些情况是可以随便替换的,有些确实不能替换。XML在不可读的情况下,即⽤记事本打不开的时候是可以替换的,原因是因为这种XML⽂件已就编译完成后将⾥⾯的内容设置为不可读的(是为了预防中病毒,要不然很容易是⽂件重病毒),想要读得必须先apktook⼯具解包,解包完成后就可读取XML⽂件。可读得即可⽤记事本打开的是不可以替换的,要不然会出问题的。所以有些时候我们可以⽤现成的已编译完成的XML⽂件直接替换,⽐如时间居,或状态栏透明替换system/app/SystemUI.apk⾥的res/layout/status_l和res/layout/quickpanel_l
和res/layout/status_l和systemui\res\layout\l⽂件就⾏,当然这⾥是替换别⼈已经制作好的透明栏,省的每次都要重新修改XML⽂件,⼯作量⼤呀!
在这⾥教程就已经写得差不多了,如有写得不好的地⽅请见谅,在此希望⼤家反编译成功,如果有不懂得地⽅可以联系我,本⼈.⾮诚勿扰。上⾯是说会出现的错误,
使⽤步骤(先搭建环境,解包,修改,在打包)第⼆次讲
具体使⽤步骤(先搭建环境,解包,修改,在打包)第⼆次讲
具体
解,简略了没有出现错误的完整反编译流程
那么我们怎么去使⽤呢?
1.我们需要在windows下搭建安卓系统环境
把你rom的framework-res.apk和twframework-res.apk提取出来,相信过的,和会⽤re管理器的就不⽤我说怎么提取了!把framework-res.apk和twframework-res.apk放到(如图)
我系统是kph2.3.4的!那么我现在就可以在windows下搭建框架了!
进⼊CMD,操作如下图!
那么在windows下安装framework框架完成!搭建完成了!那么我们开始反编译Systemui.apk
反编:在cmd在输⼊apktool d Systemui.apk 34 (34就是你将Systemui.apk反编出来的⽂件夹)E:\12\>apktool d Systemui.apk 34
I: st
I: Loading
I: Loaded.
I:loading resource table from C:\Documents and Settings\Administrator\apktool\framework\1.apk
I: Loaded.
I: Decg file-resources..
I: Decoding values*/*
I: Done.
I: Copying assets (成功)可以进⾏你的修改了!解包完后再修改你想修改的就⾏,修改完后再回编。
回编:在cmd在输⼊apktool b 34 (从⽂件夹34重建APK,输出到34)E:\12\>apktool b 34
I: Checking whether sources
I:
I: Checking whether resources
I:
I: Building (回编成功!)
回编译成功后会在⼤写APK ⽂件夹⾥多个build⽂件夹我的是E:\12\APK\build在上⾯的build⽂件夹⾥有个⼩写英⽂的apk⽂件夹打开它E:\12\APK\build\apk⾥⾯有1个resources.arsc⽂件将它复制到E:\12下,⽤wrar软件打开E:\12 下的systemui.apk(还是原来那个)点选⾥⾯
的resources.arsc⽂件然后在wrar软件菜单上选择添加弹出的压缩模式对话框中E:\12下
的resources 记得选择存储模式确定后退出wrar 把修改的systemui.apk 上传到⼿机卡中⽤⼿机中的RE⽂件管理复制它替换掉system/app/systemui.apk,替换前⽤re管理器修改权限。
安装翻遍⼯具地址apktool⼯具包下载地址
apktool.rar
1.⾸先安装需要JAVA环境,先下载JDK/JRE,已经有JAVA环境的可跳过此步
java JDK:
java JRE:
还得设置JAVA环境变量
CLASSPATH .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
JAVA_HOME C:\Program Files\Java\jdk1.6.0_10 解释JAVA_HOME指明JDK安装路径,就是刚才安装时所选择的路径Path %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
环境变量配置好了,我们就可以反编译了,(如果有不明⽩的有两种⽅法,1,请教我,2在论坛搜搜怎么设置JAVA环境变量)
反编译的使⽤反编译⼯具,⽹上有很多,有APKTOOL,Doapk ,,你们可以随便下载⼀个,地址我就不提供了,你们⾃⼰搜索⼀下,上百度,上论坛上搜都有的,但apkTOOL⼯具必须包含⼀下⼏个
下载完成反编译⼯具后,验证是否安装成功,点击开始菜单,运⾏,输⼊CMD回车
按⼀下回车出现,在输⼊APKTOOl,输⼊apktool,要看腻把apkTOOL安装在哪个盘,举例我的,我是安装在D盘APkTOOL⽂件下,先在cmd下输⼊D:回车,在输⼊CD apktool,转⼊apktool⽂件夹下,输⼊apktool 出现如下反应,,说明你安装成功了,可以进⾏APK反编译了,下⾯我已反编译SystemUI.apk为例。
⾸先的知道⼀下⼏条指令的意思
1,apktool d SysteUI.apk 12意思是将SystemUI.apk解包到12⽂件下,12⽂件夹不⽤创建,会⾃动⽣成
2,apktool b 12打包12⽂件夹(将会⾃动把12⽂件夹⾥的修改过得APK解包后修改完后⾃动打包,⽣
成resources.arsc,⽂件,这就是我们反编译的主要⽬的,当然还有其他⽬的,后⾯将会说明怎么apktool需要反编译的⽬的,⽣成的⽂件。
3,apktool if framework-res.apk这条语句很重要很多时候我们容易忽略这条语句导致打包不成功,这句语句的意思是,有些时候我们解包apk⽂件需要⽤framework-res.apk(framework是指系统框架。有时也会⽤到apktool if twframework-res.apk,同样我们只需在前⾯输⼊就⾏。当然得把framework-res.apk 这个⽂件⽬录下。
4,apktool if twframework-res.apk ,当然 twframework-res.apk 也应该放在⽂件⽬录下,不如反编译会⽤到
知道这四条语句我们就可以进⾏反编译了。
已反编译SystemUI.apk为例,,下⾯开始讲解
现在cmd下输⼊apktool if framework-res.apk(并把framework-res.apk 放在⽂件⽬录下)apktool if twframework-res.apk( twframework-res.apk 也应该放在⽂件⽬录下)其实这两部就是搭建安卓系统环境,输⼊完后在解包,apktool d SystemUI.apk 12就⾏了
这句话很关键要不然你解包会出现如下问题,
这也是我曾经遇到过得问题。疑惑了我好久,终于到原因了。
当然还有⼀些⼈会遇到
APK中有
美化过得
图⽚反编
译中有时
会出错,
后再把官
⽅APK得
drawable-
hdpi⽂件
覆盖到你
要打包的
那个apk
中那反编
译就不会
出错了,
或者把不
会出错的
图⽚的替
换到出错
的就⾏
了,不⽤
管是什么
图⽚,替
换到⾥⾯
去就⾏,
因为最后
我们不需
要⽤到这
⾥的图
⽚,所以
只要它不
出错就
⾏。
(这⾥参照CATRO⾥的反编译出错调转)当遇到这种问题是
1:直接⽤压缩软件打开这个APK,从⾥⾯提取⼀个没有报错的9png,这⾥选取btn_default_small_normal.9.png。复制⼀份原始的SystemUI.apk。
2,、将刚刚提取的btn_default_small_normal.9.png重命名为APKTOOL⾥报告有问题的⽂件名。第⼀个为title_bar_portrait.9.png,然后⽤这个
title_bar_portrait.9.png替换SystemUI.apk⾥对应的⽂件。
重复上⾯第3步直到所有APKTOOL⾥报错的⽂件都被替换完成
3 、再次⽤APKTOOL反编译SystemUI.apk,可以看到这次反编译就正常了
4.。。按⾃⼰想做的进⾏修改
5、编译修改后的SystemUI⽂件夹,,.修改你想修改的东西。
6,apktool b 12打包编译的⽂件夹,编译完成后产⽣12\build\apk ⽂件夹,改动后的⽂件替换到SystemUI.apk⾥⾯。其中resources.arsc必须选择仅存储的压缩⽅式,其他⽂件⽆所谓。
7。替换完成后SystemUI.apk就可以⽤了。
到这⾥反编译就基本完成了,⼤家想要学美化的可以上论坛,他们那⾥挺多美化的。
在说⼀下反编译其他的,替换,图⽚是可以随便替换的,APK⽂件⾥多图⽚是⽆所谓的,还是可以⽤的,
关于替换XML⽂件的问题,XML⽂件有些情况是可以随便替换的,有些确实不能替换。XML在不可读的情况下,即⽤记事本打不开的时候是可以替换的,原因是因为这种XML⽂件已就编译完成后将⾥⾯的内容设置为不可读的(是为了预防中病毒,要不然很容易是⽂件重病毒),想要读得必须先apktook⼯具解包,解包完成后就可读取XML⽂件。可读得即可⽤记事本打开的是不可以替换的,要不然会出问题的。所以有些时候我们可以⽤现成的已编译完成的XML⽂件直接替换,⽐如时间居,或状态栏透明替换system/app/SystemUI.apk⾥的res/layout/status_l和res/layout/quickpanel_l
和res/layout/status_l和systemui\res\layout\l⽂件就⾏,当然这⾥是替换别⼈已经制作好的透明栏,省的每次都要重新修改XML⽂件,⼯作量⼤呀!
在这⾥教程就已经写得差不多了,如有写得不好的地⽅请见谅,在此希望⼤家反编译成功,如果有不懂得地⽅可以联系我,本⼈.⾮诚勿扰。上⾯是说会出现的错误,
使⽤步骤(先搭建环境,解包,修改,在打包)第⼆次讲
具体使⽤步骤(先搭建环境,解包,修改,在打包)第⼆次讲xml文件怎么打开
具体
解,简略了没有出现错误的完整反编译流程
那么我们怎么去使⽤呢?
1.我们需要在windows下搭建安卓系统环境
把你rom的framework-res.apk和twframework-res.apk提取出来,相信过的,和会⽤re管理器的就不⽤我说怎么提取了!把framework-res.apk和twframework-res.apk放到(如图)
我系统是kph2.3.4的!那么我现在就可以在windows下搭建框架了!
进⼊CMD,操作如下图!
那么在windows下安装framework框架完成!搭建完成了!那么我们开始反编译Systemui.apk 反编:在cmd在输
⼊apktool d Systemui.apk 34 (34就是你将Systemui.apk反编出来的⽂件夹)E:\12\>apktool d Systemui.apk 34
I: st
I: Loading
I: Loaded.
I:loading resource table from C:\Documents and Settings\Administrator\apktool\framework\1.apk
I: Loaded.
I: Decg file-resources..
I: Decoding values*/*
I: Done.
I: Copying assets (成功)可以进⾏你的修改了!解包完后再修改你想修改的就⾏,修改完后再回编。回编:在cmd在输⼊apktool b 34 (从⽂件夹34重建APK,输出到34)E:\12\>apktool b 34
I: Checking whether sources
I:
I: Checking whether resources
I:
I: Building (回编成功!) 回编译成功后会在⼤写APK ⽂件夹⾥多个build⽂件夹我的是E:\12\APK\build在上⾯的build⽂件夹⾥有个⼩写英⽂的apk⽂件夹打开它E:\12\APK\build\apk⾥⾯有1个resources.arsc⽂件将它复制到E:\12下,⽤wrar软件打开E:\12 下的systemui.apk(还是原来那个)点选⾥⾯的resources.arsc⽂件然后在wrar软件菜单上选择添加弹出的压缩模式对话框中E:\12下的resources 记得选择存储模式确定后退出wrar 把修改的systemui.apk 上传到⼿机卡中⽤⼿机中的RE⽂件管理复制它替换掉system/app/systemui.apk,替换前⽤re管理器修改权限。
发布评论