AndroidManifest.xml反编译及重新编译简单教程 – J.Leung's blog
AndroidManifest.xml反编译及重新编译简单教程 No Comments »

首先得回答为什么要修改 AndroidManifest.xml 文件?如果你是通过搜索引擎进入到本页面的话,那我想你自己应该已经有答案了。其实修改 AndroidManifest.xml 可以实现很多 apk 功能上的修改。而我本人的需求就是要把 Smart Youtube TV 的版本升级提示去除掉。因为该 app 是安装在我的小米电视上的,而且该 app 更新比较频繁,每隔一段时间打开 Smart Youtube TV 就会提示版本升级,所以我想把这个“版本升级提示”去除掉。

基本思路:AndroidManifest.xml 反编译 – 修改 – 重新编译 – 打包 apk – 重新签名

那么怎么才能修改 AndroidManifest.xml 文件呢?或许你知道从 apk 直接解压出来的 xml 文件是一堆乱码来的。要正常修改 xml 文件得先进行反编译,通过反编译的 xml 文件就是正常的代码了。这时就可以修改其中的代码。例如我修改其中的 versionCode,把版本号修改成比较大的数值,这样再遇到版本升级,因为 versionCode 比修改的低所以不会提示升级。

这里重点说说 AndroidManifest.xml 反编译 & 重新编译

所需软件:
1. xml2axml.jar(反编译 & 编译工具);
2. Java SE Runtime Environment(Java运行环境);

操作步骤:
把 apk 解压出来的 AndroidManifest.xml 文件跟 xml2axml.jar 文件放在同一个文件夹中。按 Shift 和鼠标右键进入“在此处打开 powershell 窗口”。

AndroidManifest.xml 反编译

在 powershell 窗口输入:java -jar xml2axml.jar d AndroidManifest.xml AndroidManifest-out.xml

就这么简单,反编译完成。这个时候文件夹中会出现一个 AndroidManifest-out.xml 文件,可对其进行修改。

AndroidManifest.xml 重新编译

在 powershell 窗口输入:java -jar xml2axml.jar e AndroidManifest-out.xml AndroidManifest.xml

重新编译完成。这个时候 xml2axml 文件夹中的 AndroidManifest.xml 是已经重新编译过的了。可以直接替换 apk 安装包中的 AndroidManifest.xml 进行打包与签名操作。

补充说明:利用 xml2axml.jar 进行 AndroidManifest.xml 反编译和编译是相对比较简单的方法。网上边也有很多其他的工具,例如:AXMLPrinter2.jar 和 apk Easy Tool 等工具,但都有不少缺点。 AXMLPrinter2.jar 只能反编译,不能重新编译。有何用? apk Easy Tool 重新编译整个 apk 文件经常会出现错误。我只需要修改 AndroidManifest.xml 文件,没必要用 apk Easy Tool。

以上就是 AndroidManifest.xml 文件的反编译与编译的相对简单教程。如果各位在操作的过程中遇到什么问题,欢迎在下方留言。

TRACKBACK URLhttps://busyleung.com/androidmanifest-xml-encode-decode-compile-decompile.html/trackback

there are no comments...

Leave a Reply
Name (required)
Website
GravatarPreview