反编译工具apktool详细教程

反编译工具apktool详细教程




转帖注明原帖地址。此系列帖子系HIAPK版权所有。伸手党人人的而诛之。





看到群里这么多孩子疯狂的迷恋美化,为了把美化进行到底,在此发反编译教程一枚。教程区人气太低,我把这帖子发到这里以便更多的同学能看到。

一、工具介绍以及下载

-1)搭建jdk环境是必须的。详细教程见这里。

-2)Apktool:

      apktool是众多apk反编译工具里的佼佼者了,个人感觉操作比较简单。还有像apkmanager这样的这里就不做介绍了。

      apktool下载点我。

-3)Notepad:

      小巧且有效率的代码编辑器,这里我们用来查看和修改xml文件。
     
      Notepad汉化版点我下载。

到此,工具的介绍就告一段落。

二、Apktool的使用方法。


-1)把下载好的apktool解压缩。放到F盘根目录(我这里拿F盘举例,放到C、E、D盘随你们大小便。都可以)。如图:



-2)Apktool反编译命令:

      首先提取rom包里的framework-res.apk。拉到apktool文件夹里(这里可以把它重命名为f,以便接下来反编译的时候少打写字-_-)


      然后把你想反编译的apk文件同样拉过来。

  1. xp系统:开始-运行-输入cmd

  2. win7系统:开始-搜索程序和文件夹对话框-输入cmd
  3. -
  4. f: 回车
  5. -
  6. cd apktool 回车
  7. -
  8. apktool if f.apk 回车

  9. 这是安装搭建框架
  10. -
  11. apktool d x.apk x

  12. d是反编译命令, x.apk是反编译的apk文件,x是反编译后文件所在文件夹。
  13. -
  14. apktool b x

  15. b是回编译命令 x是回编译到的文件夹。回编译的apk会生成到x\dist\x.apk。
复制代码

      
三、Apktool反编译实例。

下面我们举个实例,拿SystemUI.apk开刀。实现状态栏半透明的效果。以便同学们更好地学习。

-1)把framework-res.apk和SystemUI.apk(这里需要把包里的SystemUI.apk和SystemUI.odex合并,记得军好像发过合并的教程,百度也可以找到)托到apktool文件夹内。

      分别重命名为f.apk和s.apk(你们懂 的,只是为了少打几个字符而已-_-,你也可以不选择重命名。)如图:



-2)win+R运行CMD

      f:回车
   
      cd apktool 回车

      apktool if f.apk 回车

      apktool d s.apk s

      如图:



在apktool文件夹里出现了名为s的文件夹。

在s\smali\com\android\systemui\statusbar文件夹下找到StatusBarService.smali文件。用Notepad++打开。如图:

  1.       搜索 const/4 v5, 0x2

  2.       改成const/4 v5, -0x3
  3.       
复制代码
保存并退出。

回到CMD界面,输入apktool b s 回车 执行回编译,在文件夹s\dist\下生成了s.apk文件。如图:





到这里反编译SystemUI.apk已经完成,进入收尾阶段,如果你反编译的不是系统文件,就可以直接签名安装了,这里我们反编译的是系统文件,所以还要有如下步骤。

用压缩程序打开没有经过修改的SystmUI.apk。把修改过的状态栏图像替换掉,然后把刚才反编译过的S.apk同样打开,把里面的classes.dex同样替换。这里主要是为了不破坏签名。

至此SystemUI.apk全部修改完成。可以替换到手机里了。

熟练掌握了apktool就可以对apk为所欲为、强势深入了,你们懂得。
                 

猜你喜欢

转载自blog.csdn.net/a8082649/article/details/37593931