在完成组件化方案的整理,落地实践后。
按照之前的设想,现在开始对插件化,热补丁技术做新的探索工作。
就目前的插件化方案,个人认为较好的方向是基于Gradle的方式做。
这种编译时的对代码做”手术”方案,兼容侵入性更优。
道高一尺,魔高一丈
感觉就像基因编辑手术的事情一样。
从细胞层面根本的解决问题,打造刀枪不入之躯。
但生物作为会进化的东西,道高一尺魔高一丈,感觉这也会不断的加速病毒的进化
正如超级细菌的出现,不断的用抗生素筛选除了最强细菌。
而目前的插件化框架,主流的整体思路是一致的,
对系统服务做HOOK处理,从而做到欺上瞒下的能力。
从而允许我们去对四大组件做新增。
无限的兼容黑洞
早期像DroidPlugin框架,会有大配的适配逻辑,
手Q插件框架内部也有类似这样的大量兼容不同ROOM的逻辑。
特别到了安卓P系统之后,你现在还得去做反射的绕过问题。不断的兼容适配,这样很累。
我们希望可以做更低的侵入性,不对系统框架实现依赖做处理的黑魔法事情。
回归主题,接下来,想重新整理下Small
和VirtualAPK
这种基于Gradle插件的方案。
最近还看了下号称只有一处做hook的插件Replugin和Phantom
思路好,但还有明显的弊端。
基于自己业务本身场景的需要,探索我们还可以做出怎样的优化?
作为开发,一定很熟悉这么一句话
任何软件工程遇到的问题都可以通过增加一个中间层来解决!
任何问题,都可以用包一层来解决兼容性问题,手动做适配。
这就是插件化的新未来方向。
The End
加油!小伙子.s
作为年轻人,还是要对技术有追求。