您的位置:首页 > 移动开发 > Android开发

Android系统开发教程之Android开发在虚拟机的优化

2016-03-28 16:53 706 查看
Android虚拟机的出现方便开发者使用安卓环境更为方便开发。可以让你在PC端(电脑上)安装运行模拟Android系统。并可以在电脑端进行几乎任何手机上可以进行的操作,甚至还可以像手机一样连接电脑,被手机助手检测到,可以模拟所有官方版本的安卓系统,并且有多款皮肤和屏幕样式可供选择。Android系统开发教程关于Android在虚拟机和原生库层面进行的优化。

 Android虚拟机概述

 虚拟机中指令的解释时问主要分为3个方面,分别是分发指令、访问运算数、执行运算。其中“分发指令”这个环节对性能的影响最大,为了加快运行速度,必须提高分发指令的速度。

 与传统的Java虚拟机基于栈不同,Dalvik是基于寄存器的。基于寄存器的虚拟机实现,虽然在硬件通用性上稍逊一筹,但是数据处理速度却有明显的改善,可以更为有效地减小冗余指令的分发和减小内存的读写访问。

 Android虚拟机优化


 Dalvik虚拟机针对移动终端所做的优化,使得其不需要很快的CPU速度和大量的内存空间。根据Google的测算,Android的早期版本只需要64MB的RAM即可使系统正常运转,其中24MB被用于底层系统的初始化和启动,另外20MB被用于高层启动、高层服务。随着Android版本的不断升级和应用功能的扩展,Android对内存的消耗也在逐渐增加。

 另外需要注意的是,Dalvik并不是按照Java虚拟机的规范来实现的,两者并不兼容。Java虚拟机运行的是Java字节码,而Dalvik虚拟机运行的则是其专有的DEX(DalvikExecutable)字节码。

 关于Java虚拟机

 在Java SE程序中,Java类会被编译成一个或者多个字节码文件(.class),然后打包成JAR文件。在执行期间,Java虚拟机会从JAR文件抽取相应的CLASS文件并从中读取指令和数据。而Android虽然也是基于Java语言进行编程的,但是在编译成CLASS文件后,Android会通过“dX”工具将应用所有的CLASS文件转换一个DEX文件,接着将DEX和应用的其他如资源文件等一起打包构成APK文件,而后Dalvik虚拟机会从其中读取指令和数据。

 上文的内容中,详细讲解Android开发环境搭建在虚拟机和原生库层面进行的优化,Android虚拟机的出现开发者更为方便进行Android开发。如果您同样对Android应用开发感兴趣,可以关注我们的官网网站和微信、微博等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: