蚕豆网 > 最新资讯 > 安卓使用技巧

Android系统APK文件详解

2012-05-29 12:48 来源:蚕豆网

什么是apk
APK是Android Package的缩写,即Android安装包。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。
APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。

Android系统APK文件详解

什么是APK?

APK是Android Package的缩写,即Android安装包。APK是类似Symbian Sis或Sisx的文件格式。通过将APK文件直接传到Android模拟器或Android手机中执行即可安装。APK文件其实是zip格式,但后缀名被修改为apk,通过UnZip解压后,可以看到Dex文件,Dex是Dalvik VM executes的全称,即Android Dalvik执行程序,并非Java ME的字节码而是Dalvik字节码。

APK 文件的结构是什么?

一个APK文件结构为:

META-INF\ Jar文件中常可以看到

res\ 存放资源文件的目录

AndroidManifest.xml 程序全局配置文件

classes.dex Dalvik字节码

resources.arsc 编译后的二进制资源文件

总结下我们发现Android在运行一个程序时首先需要UnZip,然后类似Symbian那样直接,和Windows Mobile中的PE文件有区别,这样做对于程序的保密性和可靠性不是很高,通过dexdump命令可以反编译,但这样做符合发展规律,微软的 Windows Gadgets或者说WPF也采用了这种构架方式。

在Android平台中dalvik vm的执行文件被打包为apk格式,最终运行时加载器会解压然后获取编译后的androidmanifest.xml文件中的permission分支相关的安全访问,但仍然存在很多安全限制,如果你将apk文件传到/system/app文件夹下会发现执行是不受限制的。最终我们平时安装的文件可能不是这个文件夹,而在android rom中系统的apk文件默认会放入这个文件夹,它们拥有着root权限。

META-INF目录

META-INF目录下存放的是签名信息,用来保证apk包的完整性和系统的安全。在eclipse编译生成一个api包时,会对所有要打包的文件做一个校验计算,并把计算结果放在META-INF目录下。而在OPhone平台上安装apk包时,应用管理器会按照同样的算法对包里的文件做校验,如果校验结果与META-INF下的内容不一致,系统就不会安装这个apk。这就保证了apk包里的文件不能被随意替换。比如拿到一个apk 包后,如果想要替换里面的一幅图片,一段代码, 或一段版权信息,想直接解压缩、替换再重新打包,基本是不可能的。如此一来就给病毒感染和恶意修改增加了难度,有助于保护系 统的安全。

classes.dex文件

classes.dex是java源码编译后生成的java字节码文件。但由于Android使用的dalvik虚拟机与标准的java虚拟机是不兼容的,dex文件与class文件相比,不论是文件结构还是opcode都不一样。目前常见的java反编译工具都不能处理dex文件。

Android模拟器中提供了一个dex文件的反编译工具,dexdump。用法为首先启动Android模拟器,把要查看的dex文件用adb push上传的模拟器中,然后通过adb shell登录,找到要查看的dex文件,执行dexdump xxx.dex.

(责任编辑:王鹏飞

关注“蚕豆网”微信公众账号

蚕豆网
最新鲜的手游资讯,最麻辣的游戏测评,最全面的游戏攻略,还有那领不完的游戏礼包和最绿色的游戏下载,要啥有啥,应有尽有。
文章推荐

马斯克将推出AI聊天机器人TruthGPT 挑战ChatGPT...

据外媒报道,特斯拉CEO埃隆·马斯克在采访中透露,他将推出一个名为“TruthGPT”的人工智能(AI)聊天机器...[查看全文]

标签:马斯克AIChatGPT

2023-04-18

《泡泡堂》20年风靡几代人的背后:更新超过260个...

4月12日,盛趣游戏旗下经典网络游戏《泡泡堂》迎来20周岁生日。这也是盛趣游戏继《热血传奇》之后又一款持...[查看全文]

标签:泡泡堂盛趣游戏休闲游戏

2023-04-12

50万预约达成:修真卡牌《我的御剑日记》今日首曝...

《我的御剑日记》是一款年轻人玩的探索式修真卡牌RPG手游,带给你“妖怪也修真”的全新体验,目前全网用户...[查看全文]

标签:我的御剑日记卡牌游戏

2023-03-16

NGA玩家社区荣膺2022年“玩家最喜爱的游戏综合媒...

在2022年度优秀游戏评选大赛暨金翎奖颁奖典礼上,多牛集团旗下媒体NGA玩家社区荣膺“玩家最喜爱的游戏综合...[查看全文]

标签:NGA金翎奖

2023-01-04

一加手机X WRL赛事用机改造计划:传承电竞热爱,...

近日,由一加手机以及英雄联盟手游职业联赛(以下简称WRL)携手开展的“赛事用机改造计划”,圆满落地。首届英...[查看全文]

标签:一加手机电竞

2022-12-15

网易游戏探索数字化传承路径,“游戏+”赋能中国...

为令国内外年轻人更好地感受到中国茶文化的魅力,创新性传承、创造性发展中国茶,网易旗下《逆水寒》《梦幻...[查看全文]

标签:网易游戏网易

2022-12-07

《拉结尔》(纯净版)正式上线!心碎的暗黑粉,你...

《拉结尔》(纯净版)现已脱离腾讯,由研发商INDRASOFT(广州因陀罗)独立运营。对重启后的纯净版本,官方...[查看全文]

标签:拉结尔暗黑3

2022-11-30
滑动加载
网站首页关于蚕豆网联系我们蚕豆网手机版版权声明友情链接
鄂ICP备16001690号-2 鄂公网安备42010602001799号
Powered By CmsTop ©2024 蚕豆网 - Candou.com版权所有