Android APK文件的内容是什么?

7 android apk

  • APK文件的组件是什么?
  • 它只是一堆可执行文件吗?
  • 组件的名称是什么?

CRU*_*DER 12

APK文件是通常包含以下文件夹的存档:

  • META-INF目录:

    • MANIFEST.MF:清单文件
    • CERT.RSA:申请证书.
    • CERT.SF:MANIFEST.MF文件中相应行的资源列表和SHA-1摘要; 例如:

       Signature-Version: 1.0 
       Created-By: 1.0 (Android)  SHA1-Digest-Manifest:
       wxqnEAI0UA5nO5QJ8CGMwjkGGWE=  
       ...  
       Name: res/layout/exchange_component_back_bottom.xml  SHA1-Digest:
       eACjMjESj7Zkf0cBFTZ0nqWrt7w=  
       ...  
       Name: res/drawable-hdpi/icon.png 
       SHA1-Digest: DGEqylP8W0n0iV/ZzBx3MW0WGCA=
      
      Run Code Online (Sandbox Code Playgroud)
  • lib:包含特定于处理器软件层的已编译代码的目录,该文件夹被拆分为更多文件夹:

    • armeabi:仅针对所有基于ARM的处理器编译的代码
    • armeabi-v7a:仅用于所有基于ARMv7及以上处理器的已编译代码
    • x86:仅用于x86处理器的已编译代码
    • mips:仅用于MIPS处理器的已编译代码
  • res:包含未编译到resources.arsc中的资源的目录.

  • assets:包含应用程序资产的目录,可由AssetManager检索.

  • AndroidManifest.xml:附加的Android清单文件,描述应用程序的名称,版本,访问权限,引用的库文件.此文件可能是Android二进制XML,可以使用AXMLPrinter2,apktool或Androguard等工具将其转换为人类可读的纯文本XML.

  • classes.dex:以Dalvik虚拟机可理解的dex文件格式编译的类

    resources.arsc:包含预编译资源的文件,例如二进制XML.

资源


Dev*_*ath 10

[APK] 
|
|_ _ _ _ DALVIK EXECUTABLE < This is a code that runs the android app >
|
|_ _ _ _ RESOURCES < Images, video files, Audio files, xml files, Language packs >
|
|_ _ _ _ NATIVE LIBRARIES < some native code that include c & c++ libraires >
Run Code Online (Sandbox Code Playgroud)


Mee*_*nal 5

您可以通过将其重命名为"apkname.zip"来解压缩apk以查看其中的内容.

重命名后,你可以像普通的zip文件一样提取它.我想这就是你看到的.


Pra*_*asa 2

apk 文件包含该程序的所有代码(例如 .dex 文件)、资源、资产、证书和清单文件。