Android 应用程序包文件 (APK) 是一种Android操作系统上的应用程序安装文件格式,其英文全称为 “application package file” 。一个Android应用程序的代码想要在Android设备上运行,必须先进行编译,然后被打包成为一个被Android系统所能识别的文件才可以被运行,而这种能被Android系统识别并运行的文件格式便是“APK”。 一个APK文件内包含被编译的代码文件(.dex 文件),文件资源(resources), assets,证书(certificates),和清单文件(manifest file)。

APK 文件基于 ZIP 文件格式,它与JAR文件的构造方式相似。它的互联网媒体类型是application/vnd.android.package-archive.

1. 

结构

一个APK文件通常包含以下文件:

- META-INF 文件夹:    - MANIFEST.MF: 清单信息(Manifest file)    - CERT.RSA: 保存着该应用程序的证书和授权信息。    - CERT.SF: 保存着 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=

- res: APK所需要的资源文件夹。- AndroidManifest.xml: 一个传统的Android清单文件,用于描述该应用程序的名字、版本号、所需权限、注册的服务、链接的其他应用程序。该文件使用XML文件格式,可以编译为二进制的XML,使用的工具为 AXMLPrinter2 或apktool.- classes.dex: classes文件通过DEX编译后的文件格式,用于在Dalvik虚拟机上运行的主要代码部分。- resources.arsc:程序的语言文件,可以通过这软件用(AndroidResEdit等工具)来进行翻译

你也可以用ApkTool等工具来 反编译 后再开始进行软件修改,当然可以编译回来。

更多相关文章

  1. Android 动态加载布局文件
  2. android 工程里缺少 R.java 文件原因和解决方法
  3. 使用pull解析器操作xml文件
  4. 解决android一直在running,打不开文件,下载不了gradle包的方法
  5. 【android开发】解析xml文件①
  6. 巧用布局文件实现Android中实现事件监听机制

随机推荐

  1. android操作xml
  2. Using WebViews and JavaScript
  3. android有用网址
  4. Android应用程序消息处理机制(Looper、Han
  5. android 模拟器使用指导
  6. 2011.09.26——— android sample之Notep
  7. 设置listview中的item的颜色
  8. android camera
  9. android 进制转换 (高低位)
  10. 如何进行Android单元测试