当前,可以将.dex
类文件动态加载到Android的Dalvik VM中。这可能也可以在运行时用于动态代码生成。
即将到来的ART运行时是否仍然有可能?
它似乎和Dalvik一样工作。
感谢matiash引用了I / O 2014演讲!我已经观看了它的视频记录,这是开发人员在运行时代码加载时必须说的(摘录自转录本):
[听众的问题:]因此,我想知道ART如何通过字节码注入(可能在编译后甚至在运行时发生)活跃起来?
[...]
[伊恩·罗杰斯(Ian Rogers)的回答:]因此Dalvik拥有并继续使用ART的模型是,对于类加载器,我们必须拥有文件通过文件来备份类加载器的所有内容。因此Dalvik从来没有支持过执行指令的最终内存注入之类的工作,依此类推。
如果磁盘上有文件,那么我们可以提前进行编译并将其放入缓存中,这样我们就不会一直在重新生成它。因此,基本上,它的工作方式与Dalvik相同。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句