首页 > 编程知识 正文

apk反编译教程,apktool工具反编译apk

时间:2023-05-03 23:40:02 阅读:11753 作者:4340

正式说明apk工具的逆编译。 如果有不好写的地方,请谅解我第一次写教程。

正文

1 .首先安装需要JAVA环境。 首先下载JDK/JRE。 如果已经有JAVA环境,请跳过此步骤

Java JDK:http://www.Oracle.com/tech network/Java se/downloads/JDK-6u 25-download-346242.html

Java JRE:http://www.Oracle.com/tech network/Java se/downloads/JRE-7u1- download-513652.htmlt $ u! w! [/K

还必须设置JAVA环境变量

CLASSPATH . %JAVA_HOME%libdt.jar; %JAVA_HOME%libtools.jar

Java_homec :program filesJavaJDK1.6.0_ 10说明Java _ home表示JDK的安装路径是刚才安装时选择的路径

Path %JAVA_HOME%jmdcg; %JAVA_HOME%jrejmdcg

配置环境变量后,我们可以反编译。 (如果有不明白的地方,有两种方法。 1、请告诉我。 2在论坛上查找如何设置JAVA环境变量。 )

反编译使用反编译工具。 网上有很多。 有apk工具、Doapk和apk管理。 ……,你们可以自由下载。 不提供地址。 请自己搜索一下。 您可以访问百度,也可以访问论坛,但apk工具必须包含一些内容

下载反编译工具后,检查安装是否成功,单击“开始”菜单,运行,然后输入CMD回车

点击返回出现

键入,APKTOOl,然后键入APKTOOl,看厌了要将APKTOOl安装在哪个磁盘上。 例如,在我的情况下,安装在d磁盘的apk工具文件下,首先在cmd下输入d :输入CD apk工具,导航到apk工具文件夹下,然后输入apk工具,反应如下:

表示你安装成功,可以进行APK的反向编译。 以下是反向编译SystemUI.apk的示例。

首先我知道一些指令的意思

1,apktool d SysteUI.apk 12意味着将SystemUI.apk解压缩到12个文件之下,12个文件夹不创建而自动生成

2,APKtool b 12包12文件夹(取消包12个文件夹中的修改后的apk,修改后自动打包,生成resources.arsc,文件。 这是我们反编译的主要目的。 当然也有其他目的。 稍后,我们将介绍apk工具需要如何进行反向编译,以及生成的文件。

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也应该放在文件目录下,反而应该反编译使用Mms.apk .

如果知道这四个句子,我们就能进行反编译。

以下是对SystemUI.apk进行反向编译的示例:和

现在,在cmd下键入apktool if framework-res.apk,将framework-res.apk置于文件目录下。 apktooliftwframework-RES.apk (tw框架- RES.apk ) tw

这句话很重要。 否则,解开包会发生以下问题。

这也是我曾经遇到的问题。 我怀疑了很久,终于找到了原因。

当然也有人会遇到

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打包编译的文件夹,编译完成后产生12buildapk 文件夹,找改动后的文件替换到SystemUI.apk里面。其中resources.arsc必须选择仅存储的压缩方式,其他文件无所谓。

7。替换完成后SystemUI.apk就可以用了。

到这里反编译就基本完成了,大家想要学美化的可以上9000论坛,他们那里挺多美化的。

在说一下反编译其他的,替换,图片是可以随便替换的,APK文件里多图片是无所谓的,还是可以用的,

关于替换XML文件的问题,XML文件有些情况是可以随便替换的,有些确实不能替换。XML在不可读的情况下,即用记事本打不开的时候是可以替换的,原因是因为这种XML文件已就编译完成后将里面的内容设置为不可读的(是为了预防中病毒,要不然很容易是文件重病毒),想要读得必须先apktook工具解包,解包完成后就可读取XML文件。可读得即可用记事本打开的是不可以替换的,要不然会出问题的。所以有些时候我们可以用现成的已编译完成的XML文件直接替换,比如时间居,或状态栏透明替换system/app/SystemUI.apk里的res/layout/status_bar_tracking.xml和res/layout/quickpanel_quick_settings.xml和res/layout/status_bar_expanded.xml和systemuireslayoutstatus_bar.xml文件就行,当然这里是替换别人已经制作好的透明栏,省的每次都要重新修改XML文件,工作量大呀!

在这里教程就已经写得差不多了,如有写得不好的地方请见谅,在此希望大家反编译成功,如果有不懂得地方可以联系我,本人.非诚勿扰。上面是说会出现的错误,

具体使用步骤(先搭建环境,解包,修改,在打包)第二次讲解,简略了没有出现错误的完整反编译流程

那么我们怎么去使用呢?

1.我们需要在windows下搭建安卓系统环境

把你rom的framework-res.apk和twframework-res.apk提取出来,相信root过的,和会用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: Baksmaling...test

I: Loading resource table...

I: Loaded.

I:loading resource table from C:Documents and SettingsAdministratorapktoolframework1.apk

I: Loaded.

I: Decoding file-resources..

I: Decoding values*/* XMLs...

I: Done.

I: Copying assets and libs...(成功)可以进行你的修改了! 解包完后再修改你想修改的就行,修改完后再回编。 回编:在cmd在输入apktool b 34 (从文件夹34重建APK,输出到34)E:12>apktool b 34

I: Checking whether sources has changed...

I: Smaling...

I: Checking whether resources has changed...

I: Building resources...

I: Building apk file...(回编成功!) 回编译成功后会在大写APK 文件夹里多个build文件夹我的是E:12APKbuild在上面的build文件夹里有个小写英文的apk文件夹打开它E:12APKbuildapk里面有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管理器修改权限。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。