爱奇艺开源轻量级插件化方案 Neptune
爱奇艺近日开源了其轻量级插件化方案 Neptune,项目地址:https://github.com/iqiyi/Neptune 插件化框架可以在主程序不重新安装的情况下,针对单个业务模块进行动态加载达到模块更新的目的,整个加载更新过程,对用户来说也是无感知的。 在爱奇艺APP快速发展的历程中,需要插件化的原因,归结起来有以下几点: 业务快速发展,代码膨胀,APP不可避免地遇到了65536的大坑 代码量增大带来了APK包体积的增加,而爱奇艺APK包体积一直在竞品中保持领先地位 模块耦合度高,协作开发困难,编译时间长 应用频繁更新,用户粘性降低,新版本覆盖率和覆盖速度不满足业务需求 新功能开发,需要支持动态升级,插件动态下发形式可以完成模块的热部署和实时更新 爱奇艺APP从2013年就开始了插件化技术的研究和改造,截止目前一共有20多个独立业务模块以插件化的方式运行和并行迭代,其中包括APP首页的奇秀、文学、电影票、漫画等业务。开发插件化框架的Demo并不是很难,但是要开发一款完善的插件化框架,兼容适配国产各种碎片化的ROM,同时满足业务需求,却不是那么容易。插件框架的稳定性和兼容性,从原...
