341

可以查看Androidmanifest.xml文件吗?

我只是将apk文件的扩展名更改为zip. 此zip文件包含该Androidmanifest.xml文件。但我无法查看Androidmanifest.xml. 它是完全加密的。

如何查看Androidmanifest.xml文件?

4

17 回答 17

237

是的,您可以查看XML文件的Android APK文件。有一个工具可以做到这一点:android-apktool

它是一个用于逆向工程第三方、封闭、二进制 Android 应用程序的工具

如何在您的 Windows 系统上执行此操作:

  1. 下载 apktool-install-windows-* 文件
  2. 下载apktool-*文件
  3. 解压到你的 Windows 目录

现在将该APK文件也复制到该目录中并在命令提示符下运行以下命令:

apktool d HelloWorld.apk ./HelloWorld

HelloWorld这将在您的当前目录中创建一个目录“ ”。在其中您可以找到AndroidManifest.xml解密格式的文件,您还可以XML在目录中找到其他文件"HelloWorld/res/layout"

HelloWorld.apk是您的 Android APK 文件。

有关更多信息,请参见下面的屏幕截图: 替代文字

于 2010-11-16T06:49:30.137 回答
175

Android Studio 现在可以显示这一点。转到Build>Analyze APK...并选择您的 apk。然后就可以看到AndroidManifest文件的内容了。

于 2016-10-28T15:53:43.247 回答
60

aapt d xmltree com.package.apk AndroidManifest.xml

AndroidManifest.xml将从指定的 APK转储。它不是 XML 格式的,但您仍然可以阅读它。

aapt(Android Asset Packaging Tool) 是 Android SDK 自带的内置工具。

于 2015-02-11T21:33:49.177 回答
53

谷歌刚刚发布了一个用于检查 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

跑:

java -jar ClassyShark.jar -open <file.apk>
于 2016-11-18T21:16:43.907 回答
46

在这个线程中,Dianne Hackborn 告诉我们,我们可以使用 aapt 从 AndroidManifest 中获取信息。

我启动了这个快速的 unix 命令来获取版本信息:

aapt dump badging my.apk | sed -n "s/.*versionName='\([^']*\).*/\1/p"
于 2011-01-15T01:10:55.163 回答
27

您可以使用APK Analyzerapkanalyzer的命令行版本,它与 Android SDK 捆绑在一起。只需在 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 文件的路径。

于 2019-02-25T21:14:57.230 回答
20

您可以使用此命令:保存到文件 AndroidManifest.txt

aapt dump xmltree gmail.apk AndroidManifest.xml > AndroidManifest.txt
于 2016-07-03T09:10:40.487 回答
13

AndroidManifest.xml使用axmldec解码文件:

axmldec -o output.xml AndroidManifest.xml

或者

axmldec -o output.xml AndroidApp.apk
于 2019-02-05T11:51:26.340 回答
11

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

$(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
于 2019-01-31T17:03:53.117 回答
8

AXMLParser和APKParser.jar可以完成这项工作,您可以查看链接。AXML解析器

于 2014-01-06T07:30:16.963 回答
7

有一个在线工具可以让你上传一个 APK 它会反编译它,最后让你下载一个包含所有源的 zip 文件、清单 XML 文件等反编译,所有这些都不需要在你的计算机上安装任何程序: http:/ /www.javadecompilers.com/apk

此外,如果您只想检查一些参数,您可以通过他们的 UI

于 2016-05-19T08:58:49.610 回答
2

您还可以使用我的应用App Detective查看您在设备上安装的任何应用的清单文件。

于 2017-10-30T23:34:33.737 回答
1

这是一个旧线程,但我想我会提到,您的手机有 root,您可以使用 root explorer 应用程序直接在手机上查看它。你甚至不必提取它来查看。

于 2014-04-30T19:16:21.327 回答
1

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

androguard axml my.apk -o my.xml

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

于 2021-02-19T12:54:57.477 回答
1

所有这些答案似乎有点过度设计!

  1. 只需抓住这个 chrome 扩展程序:https ://chrome.google.com/webstore/detail/apk-downloader/fgljidimohbcmjdabiecfeikkmpbjegm

  2. .apk使用上述扩展名从 playstore下载您想要的文件。

  3. 上传.apk到此在线工具以获取manifest.xmlhttps ://www.sisik.eu/apk-tool

于 2021-11-08T20:36:18.573 回答
0

另一种选择是使用 Jadx:https ://github.com/skylot/jadx

只需打开您的 APK 并在树视图中选择“AndroidManifest.xml”。它将像那样可读。

于 2021-11-04T12:51:31.443 回答
-1

该文件需要反编译(或 deodex'd 不确定是哪一个)。但这里有另一种方法:

-Download free Tickle My Android tool on XDA: https://forum.xda-developers.com/showthread.php?t=1633333https://forum.xda-developers.com/showthread.php?t=1633333
-Unzip
-Copy APK into \_WorkArea1\_in\ folder
-Open "Tickle My Android.exe"
-Theming Menu
-Decompile Files->Any key to continue (ignore warning)
-Decompile Files->1->[Enter]->y[Enter]
-Wait for it to decompile in new window... Done when new window closes
-Decompiled/viewable files will be here: \_WorkArea3\_working\[App]\
于 2018-10-05T18:33:55.543 回答