Andriod APK 文件结构详解
来源:互联网 发布:淘宝儿童女模特名字 编辑:程序博客网 时间:2024/06/05 11:11
APK文件结构
APK文件实际是一个zip压缩包,可以通过解压缩工具解开。
下面是用解压缩工具解开的APK包的结构:
|-- AndroidManifest.xml
|-- META-INF
| |-- CERT.RSA
| |-- CERT.SF
| `-- MANIFEST.MF
|-- classes.dex
|-- res
| |-- drawable
| | `-- icon.png
| `-- layout
| `-- main.xml
`-- resources.arsc
Manifest文件
AndroidManifest.xml是每个应用都必须定义和包含的,它描述了应用的名字、版本、权限、引用的库文件等信息,如要把apk上传到Google Market上,也要对这个xml做一些配置。网上已有很多资料,在此就不多做介绍了。
在apk中的AndroidManifest.xml是经过压缩的,可以通过AXMLPrinter2工具解开,具体命令为:
java -jar AXMLPrinter2.jar AndroidManifest.xml
META-INF目录
META-INF目录下存放的是签名信息,用来保证apk包的完整性和系统的安全。
在eclipse编译生成一个apk包时,会对所有要打包的文件做一个校验计算,并把计算结果放在META-INF目录下。而在Android手机上安装apk包时,应用管理器会按照同样的算法对包里的文件做校验,如果校验结果与META-INF下的内容不一致,系统就不会安装这个apk。这就保证了apk包里的文件不能被随意替换。比如拿到一个apk包后,如果想要替换里面的一幅图片,一段代码, 或一段版权信息,想直接解压缩、替换再重新打包,基本是不可能的。如此一来就给病毒感染和恶意修改增加了难度,有助于保护系 统的安全。
classes.dex文件
classes.dex是java源码编译后生成的java字节码文件。但由于Android使用的dalvik虚拟机与标准的java虚拟机是不兼容的,dex文件与class文件相比,不论是文件结构还是opcode都不一样。
res目录
res目录存放资源文件。
resources.arsc
编译后的二进制资源文件。通常本地化、汉化资源存储在该文件文件中。
- Andriod APK 文件结构详解
- Apk文件结构
- Apk文件结构简介
- APK文件结构
- APK 的文件结构
- Android APK文件结构
- APK文件的结构
- 学习andriod 认识,文件结构,查找,事件
- andriod的apk文件相关的编译反编译工具
- andriod的apk文件相关的编译反编译工具
- andriod的apk文件相关的编译反编译工具
- andriod的apk文件编译反编译工具及步骤
- Apk文件结构、dex反编译
- Apk文件结构 & dex反编译
- Apk文件结构简介【轉載】
- Apk文件结构、dex反编译
- Apk文件结构, Dex反编译
- apk文件结构解析一
- UVa10985 Rings'n'Ropes
- 如何将access mdb数据库导入到mysql中 .mdb转mysql
- OC笔记心得存档---深浅复制
- HDU - 1845 Jimmy’s Assignment (二分匹配)
- oscache.properties文件配置
- Andriod APK 文件结构详解
- 实用新型专利和发明专利有什么区别?
- 软件分享
- java 重定向和转发的区别
- 关于arcmap启动出现c++ runtime error的问题,都是360若得祸
- 暑假第7天 7月12日
- 基督教的基本的半截大兵
- OSCashe教程总结(全)
- 肯定能看上你本科时开始你帮我