伊谢尔伦2017-04-17 17:36:16
主要是对程序和系统间的关系进行梳理,让程序适应更新后的系统,可能会对程序的在系统中的配置数据进行更新;可能清除、更新程序的编译缓存;可能对系统的新功能为程序做记录……总之事情是很多的,根据每次更新的不同又各不一样。
举个简单的例子,如果某次系统增加或优化了一个对其唤醒的功能,这时就需要重新计算每个程序是否含有唤醒广播接收器,唤醒的时间是怎样,记录这些信息为对齐唤醒这个功能服务。
PHP中文网2017-04-17 17:36:16
首先回答楼主的问题,更新系统后的优化是在将系统中所有的apk中的dex文件转换为odex文件。
为何要做这个操作,这里要说下Dalvik和ART。在Android4.4之前,我们都是用Dalvik,它是解释执行的,而在Android 4.4 之后,google 引入了ART运行时环境,而且在5.0之后全面转向ART,它采用的是预先编译的机制,将dex文件预先转换为odex文件,预编译字节码到机器语言,从而让应用程序执行将更有效率,启动更快。