继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Android 如何执行代码

弑天下
关注TA
已关注
手记 141
粉丝 12
获赞 51

android开发者使用java,不过android平台不用java虚拟机来执行代码,而是把应用编译成Dalvik字节码(5.0以后Dalvik被ART取代),使用Dalvik虚拟机来执行。Java代码代码仍然编译成Java字节码,但随后Java字节码会被dex编译器(dx,SDK工具)编译成Dalvik字节码。最终,应用包只包含Dalvik字节码,而不是java字节码。

android应用也称为apk,因为应用被打包成带有apk后缀的文件,(apk文件只是个简单的ZIP压缩文件,可以使用常见的压缩解压工具如WinZip来查看apk文件的内容)这是一个简单的压缩文件。clasess.dex就在这个压缩文件里,他包含了应用的字节码。Android的工具包中有名为dexdump的工具,可以把classes.dex中的二进制代码转化为使人易读的格式。

在android2.2中引入了实时(JIT)编译器。Dalvik JIT编译器把Dalvik字节码编译成本地代码,这可以明显加快执行速度。JIT编译器可以显著提高性能,因为:

1,本地代码直接由CPU执行,而不必由虚拟机解释执行。

2,本地代码可以为特定架构予以优化

android 2.2的代码执行速度比android 2.1快2到5倍。虽然代码的具体功能对结果产生很大影响,但可以肯定的是,使用android 2.2 及更高版本会显著提升速度。

原文链接:http://www.apkbus.com/blog-367522-59274.html

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP