Facebook App 优化工具 ReDex 优化的 6 点及未优化的一大方面
这篇讲的是Facebook开源的Android优化工具ReDex。它直接作用于编译后的Dex字节码,目标明确:减小APK体积并提升启动速度。经过Facebook的实测,它能使启动速度提升超过20%,Dex大小减小25%,对内存紧张的设备效果尤为显著。 文章详细拆解了ReDex的6项核心优化。其中最具特色的一项是“基于启动反馈的类布局优化”:工具会先在测试环境中运行APK,追踪启动时实际加载的类,然后将这些类的字节码“前置”到Dex文件头部,从而大幅减少应用启动时在闪存中查找类文件的时间。除此之外,还包括混淆压缩、函数内联、删除无用接口与代码、清理元数据等常规但高效的手段。 作者还点明了ReDex“管道式”的架构设计,每个优化阶段都可像插件一样灵活组合或关闭。同时,文章也提醒了使用中的注意事项,例如需为JNI调用和反射保留特殊配置、处理后的APK必须重新签名,以及混淆优化可能影响崩溃堆栈收集等实际问题。 如果正在寻找一种能与现有编译流程集成、并对APK体积和冷启动有硬性优化需求的方法,那么深入理解ReDex的这些具体优化点和配置逻辑,会带来直接的启发。