美文网首页
dex-oat的小知识

dex-oat的小知识

作者: 小草凡 | 来源:发表于2019-06-05 22:34 被阅读0次

Dalvik-ART-OAT

ART兼容Dalvik.也就是说ART 能运行”dex”(Dalvik执行文件).因此对Androidapp的开发者来说,他们没有什么区别.两者最大的区别是:ART把JIT(Just-in-Time)变成了AOT(Ahead-of-Time).JIT需要在每次运行app时都需要执行一遍,而AOT 只需要执行一次,而后续再运行此app是不需要再执行,其明显提高了性能.当然ART 这样做,也是有代价的,那就是以空间换时间.ART能对应用的所有code做优化,其把bitcode 编译为ELF文件.而ELF文件也往往比odex文件大很多.而JIT 只能对local/method做优化.ART的另一个缺点是其第一次执行优化时需要更长的时间.这也是导致第一次开机时间过长的原因.

AndroidO四种编译方法:

  • verify: 只做验证,相当于不做优化.
  • quicken: 部分优化.
  • speed: 所有优化
  • speed-profile: 根据profile-list进行优化

编译相关选项

  • WITH_DEXPREOPT
    对system下的应用进行dex2oat优化
  • DONT_DEXPREOPT_PREBUILTS
    包含了include $(BUILD_PREBUILT)的应用不优化
  • WITH_DEXPREOPT_BOOT_IMG_ONLY
    开机阶段的classpath进行优化
  • LOCAL_DEX_PREOPT
    单个应用是否优化
  • PRODUCT_DEXPREOPT_SPEED_APPS(AndroidO)
    列表中的应用会会用AOT全部优化
  • dalvik.vm.usejit
    是否开启JIT

相关文章

  • dex-oat的小知识

    Dalvik-ART-OAT ART兼容Dalvik.也就是说ART 能运行”dex”(Dalvik执行文件).因...

  • 开发小知识(一)

    开发小知识(一) 开发小知识(一)

  • 小知识

    夏天来了,格式冰冻的饮品也都上市了,什么冰激凌,炒冰,格式各样五花八门,我们要知道冰冻食物温度是0摄氏度,而我们人...

  • 小知识

    1字母默认大写的问题 以前了布局文件里定义一个text为字母的时候,很烦人的,它显示出来的默认就是大写,好烦人。今...

  • 小知识

  • 小知识

    气们不听话,一直雨加雪,她呼出一口热气,还有半小时锅就煮开了。 她去洗澡,水声隐隐想起一首歌,跟着哼唱。 她再回厨...

  • 小知识

    按住鼻翼两侧可以止住打喷嚏。 头发顺着发根到发梢的方向洗会柔顺很多。 鞋垫经常拿出来晾一晾可以...

  • 小知识

    #微协小分享# 今天微协君在桂花树上看到了一种果子,第一次见到它的微协君表示很神奇。原来这种果子叫桂花果[并不简单...

  • 小知识

    瓶装饮料扭不开怎么办,拍几下瓶底就可以轻松扭开,因为拍瓶底就会有小气泡冒出在整个瓶子里面会产生挤压里使瓶盖向上挤压...

  • 小知识

    1.元宵节:Lantern Festival 2.刺绣:Embroidery 3.重阳节:Double-Ninth...

网友评论

      本文标题:dex-oat的小知识

      本文链接:https://www.haomeiwen.com/subject/nujexctx.html