有没有办法提取和查看.apk文件的内容?
答案 0 :(得分:109)
实际上apk文件只是一个zip存档,因此您可以尝试将文件重命名为theappname.apk.zip
并使用任何zip实用程序(例如7zip)将其解压缩。
androidmanifest.xml
文件和资源将被提取并且可以被查看,而源代码不在包中 - 只是编译的.dex文件(“Dalvik Executable”)
答案 1 :(得分:25)
答案 2 :(得分:12)
解压缩会显示资源,AndroidManifest.xml
将被编码。 apktool
可以 - 在很多其他事情中 - 也可以解码这个文件。
要将应用App.apk
解码到文件夹App
,请运行
apktool decode App.apk App
apktool
未包含在官方Android SDK中,但可以使用大多数数据包存储库。
答案 3 :(得分:9)
还有zzos。 (完全披露:我写了)。它只反编译实际资源,而不是我没有编写的dex部分(baksmali,在处理该部分方面做得非常出色)。
Zzos比apktool知名度要低得多,但有一些APK可以更好地处理它(反之亦然 - 稍后会更多)。大多数情况下,上次检查时,apktool不会处理包含自定义资源类型(不是修饰符)的APK,并且由zzos处理。还有一些情况下逃避zzos处理得更好。
在消极方面,zzos(当前版本)需要一些支持工具来安装。它是用perl编写的(而不是用Java编写的APKTool),并使用aapt进行实际的反编译。它还没有对attrib资源进行反编译(APKTool会这样做。)
这个名字的意思是“aapt”,Android的资源编译器,向下移了一个字母。
答案 4 :(得分:6)
答案 5 :(得分:3)
有针对Android apks的在线反编译器
http://www.decompileandroid.com/
从本地计算机上传apk
等一下
以zip格式下载源代码。
解压缩它,您可以正确查看所有资源,但所有java文件都没有被正确反编译。
答案 6 :(得分:3)
<强> unzip my.apk
强>
这可以解决Linux命令行的问题。
答案 7 :(得分:3)
4种打开APK文件的建议方法:
1。打开Android Studio的apk文件(用于照片,Java代码并分析大小) 最好的方法
2。通过应用程序winRar,7zip等打开(仅查看照片和...)
3.use网站javadecompilers(用于照片和Java代码)
4。使用APK Tools(用于照片和Java代码)
答案 8 :(得分:2)
根据您想要提取APK的原因,APK分析器可能就足够了。它显示了目录和文件大小。它还显示了可以深入分析的按包分组的方法计数。
APK Analyzer内置于Android Studio中。您可以从顶部菜单中访问它,Build - &gt;分析APK。
答案 9 :(得分:2)
对于使用cordova和angularjs开发的混合应用,您可以:
1)将.apk文件重命名为.zip
2)提取/解压缩内容
3):在资产文件夹中,您将获得www文件夹
答案 10 :(得分:0)
您也可以使用Jadx - https://github.com/skylot/jadx。我使用了本页中提到的所有工具,发现Jadx效果最好。清单文件和其他类文件尽可能通过此工具转换为可读格式。
PS - http://www.javadecompilers.com/apk也使用jadx反编译器在线完成同样的工作。如果要取消归档单个apk,则更简单。
干杯!
答案 11 :(得分:0)
您还可以在Android设备中看到APK文件的内容,这有助于调试。
可以查看包括应用程序清单在内的所有文件,也可以使用电子邮件,云等进行共享,无需生根。应用程序可从以下网址获得:
https://play.google.com/store/apps/details?id=com.dasmic.android.apkpeek
免责声明:我是此应用的作者。
答案 12 :(得分:0)
APK Scanner可以在PC上显示APK文件的信息。
也可以从android设备中提取apk文件。
并且可以链接到其他工具。(JADX-GUI,JD-GUI ...)