是否可以查看Androidmanifest.xml文件?

我刚刚把apk文件的扩展名改成了zip。此zip文件包含Androidmanifest.xml文件。但是我无法查看Androidmanifest.xml的内容。它是完全加密的。

如何查看Androidmanifest.xml文件?


当前回答

另一个有用的(基于python的)工具是Androguard,使用它的axml子命令:

androguard axml my.apk -o my.xml

这将一次性提取和解码应用程序清单。与apktool不同,它不解包其他任何东西。

其他回答

AXMLParser和APKParser.jar也可以完成这项工作,你可以看到链接。AXMLParser

Aapt2,包括在Android SDK构建工具可以做到这一点-不需要第三方工具。

$(ANDROID_SDK)/build-tools/28.0.3/aapt2 d --file AndroidManifest.xml app-foo-release.apk

从build-tools v29开始,你必须添加命令xmltree:

$(ANDROID_SDK)/build-tools/29.0.3/aapt2 d xmltree --file AndroidManifest.xml app-foo-release.apk

您可以使用apkanalyzer,与Android SDK绑定的APK Analyzer命令行版本。在CLI界面执行如下命令:

/path/to/android-sdk/tools/bin/apkanalyzer manifest print /path/to/app.apk

你只需要将/path/to/ Android - SDK替换为你的Android SDK版本的正确路径,将/path/to/app.apk替换为你的APK文件的路径。

谷歌刚刚发布了一个跨平台的开源工具,用于检查apk(在许多其他二进制Android格式中):

ClassyShark是Android开发人员的一个独立的二进制检查工具。它可以可靠地浏览任何Android可执行文件,并显示重要信息,如类接口和成员,dex计数和依赖关系。ClassyShark支持多种格式,包括库(.dex, .aar, .so),可执行文件(.apk, .jar, .class)和所有Android二进制xml: AndroidManifest,资源,布局等。

安装8.2版:

wget https://github.com/google/android-classyshark/releases/download/8.2/ClassyShark.jar

Run:

java -jar ClassyShark.jar -open <file.apk>

另一个有用的(基于python的)工具是Androguard,使用它的axml子命令:

androguard axml my.apk -o my.xml

这将一次性提取和解码应用程序清单。与apktool不同,它不解包其他任何东西。