shadow是一款由腾讯自主研发的android插件框架,它以其独特的插件化设计和高效性,在业界内获得了广泛认可。经过线上亿级用户量的检验,shadow不仅提供了插件技术的关键代码分享,还完整呈现了上线部署所需的所有设计,使得开发者能够轻松实现插件的集成与部署。
软件亮点
1. 全动态插件框架:shadow采用全动态化的设计,使得插件框架的代码成为了插件的一部分,插件的迭代不再受宿主打包了旧版本插件框架所限制。
2. 零反射无hack:shadow从理论上就确定了无需对任何系统做兼容开发,更无任何隐藏api调用,与google限制非公开sdk接口访问的策略完全不冲突。
3. kotlin支持:shadow的核心代码完全使用kotlin实现,代码简洁易维护,为开发者提供了更好的编程体验。
软件特点
1. 复用独立安装app的源码:插件app的源码原本就是可以正常安装运行的,shadow可以复用这些源码,无需重新开发。
2. 宿主增量极小:得益于全动态实现,真正合入宿主程序的代码量极小(约15kb,160方法数左右),对宿主应用的影响微乎其微。
3. 丰富的插件支持:shadow支持四大组件(如fragment、service等)的插件化,还支持跨进程使用插件service、自定义theme等高级功能。
软件攻略
1. 了解插件机制:在使用shadow之前,建议先了解其插件化的基本机制,以便更好地进行插件的开发和集成。
2. 学习kotlin:由于shadow的核心代码使用kotlin编写,因此掌握kotlin语言对于深入理解shadow和进行高效开发至关重要。
3. 参考官方文档和示例:官方提供了详细的文档和示例代码,可以作为学习和开发的重要参考。
软件测试
1. 功能测试:确保插件的各项功能都能正常工作,包括四大组件的插件化、跨进程使用插件service等。
2. 兼容性测试:在不同的android版本和设备上进行测试,确保shadow插件框架的兼容性。
3. 性能测试:对宿主应用和插件进行性能测试,确保shadow插件框架的引入不会对性能产生显著影响。