前言
相信大家在近段时间都可以看到在面试或者晋升考核中,都能被问到关于Android架构方面的难题,其中提及最多的还是以插件化和组件化方面最多,这其中也包含了Aanroid开发中有着2至5年以上经验的工程师
组件化,插件化对Android开发的重要性
优势
1,每个模块可以独立开发编译运行
2,开发单个模块时可以共享资源和工具类
3,可以针对单个模块测试
4,宿主和插件分开编译
5,并发开发
6,动态更新插件
7,按需下载模块
8,方法数或变量数爆棚
难点
1,上线周期长,从修改代码到用户更新需要较长的时间;
2,用户更新代价较大,每次用户更新都需要下载整个Apk包,整个Apk包括了一个应用的所有代码,要消耗用户较多的流量。
3,如果是一些重要的更新,为了确保用户都能更新到,还需要强制更新,即用户打开App后如果不更新则退出应用,这种对用户来说是极其不友好的。