apk是什么文件格式(电脑apk文件打开方式)

APK文件介绍

一、APK文件简介

APK英文全称“Android application package”,即Android安装包(apk),是一种能被Android系统识别并运行的应用程序安装文件,用于分发和安装移动应用及中间件。一个Android应用程序的代码想要在Android设备上运行,必须先进行编译,然后被打包成为一个被Android系统所能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是“APK”。

二、APK文件结构

APK本质就是一个zip压缩包文件,直接使用解压工具解压就能看到完整的文件系统结构。一个APK文件中通常包含有以下文件:

·被编译的代码文件(.dex 文件)

·文件资源(resources)

·原生资源文件(assets)

·证书(certificates)

·清单文件(manifest file)

apk是什么文件格式(电脑apk文件打开方式)

三、获取apk文件

获取apk的方式很多,比如从应用的官方网站下载、从应用市场下载或者从手机中直接导出等等,下面主要着重说一下如何从手机中导出APK文件。

运行命令“adb shell dumpsys activity top”获取当前应用包名,如下图红色框中所示,该包名即为当前应用包名。

得到应用包名之后,可以通过命令“adb shell pm path com.tencent.mm”得到当前APP对应的apk文件所在模拟器中的文件路径。

使用命令 :

“adb pull /data/app/com.tencent.mm-1/base.apk D:/ test”将模拟器中的apk导出到电脑中。

四、APK反编译

apk反编译就是通过使用apk编译工具,将apk文件中的源文件和资源反编译出来,得到的源文件和资源文件可以进行处理后再进行编译,以达到个性化定制、汉化apk等目的。

Android中常用的反编译工具有apktool、dex2jar和jd-gui。

apktool主要用于逆向apk文件的工具, 它可以将资源解码为几乎原始的形式。

jd-gui是一个独立的图形实用程序,可显示“.class”文件的 Java 源代码。

dex2jar可以将dex文件转换成Java文件,以界面的形式展示反编译出来的java源代码。

下面以dex2jar为例,讲一下使用dex2jar工具反编译apk文件的操作过程:

1、下载完工具压缩包后对它进行解压

2、把需要反编译的APK文件的后缀名改

成zip,然后解压它(解压的时候选择好一

个文件夹放解压后的文件,防止文件絮乱)。

3、在解压后的文件夹中找到所有“

.dex”格式文件,将它复制到“dex2jar”工具

目录下。

4、打开命令进入“d2j-dex2jar.bat ”文

件所在目录,输入命令“

d2j-dex2jar.bat classes.dex ”。

5、接下来您会看到文件“d2j-dex2jar.bat ”

所在目录下生成了一个“classes-dex2jar.jar”

文件,这个文件就是我们反编译“classes

.dex”文件所生成的java文件。

6、使用jd-gui打开“classes-dex2jar.jar”文

件就可以查看到源代码。

结束语

以上简单介绍了apk文件结构和获取模拟器中apk文件的操作,并介绍了反编译工具dex2jar的用法,希望对大家有所帮助!

发表评论

登录后才能评论