Tencent Shadow 项目推荐
Shadow 零反射全动态Android插件框架 项目地址: https://gitcode.com/gh_mirrors/shado/Shadow
1. 项目基础介绍和主要编程语言
Tencent Shadow 是一个由腾讯自主研发的 Android 插件框架,经过线上亿级用户量检验。该项目的主要编程语言是 Kotlin 和 Java。Shadow 不仅开源分享了插件技术的关键代码,还完整的分享了上线部署所需要的所有设计。
2. 项目核心功能
Shadow 项目具有以下核心功能:
- 零反射无Hack实现插件技术:从理论上就已经确定无需对任何系统做兼容开发,更无任何隐藏API调用,和Google限制非公开SDK接口访问的策略完全不冲突。
- 全动态插件框架:一次性实现完美的插件框架很难,但Shadow将这些实现全部动态化起来,使插件框架的代码成为了插件的一部分,插件的迭代不再受宿主打包了旧版本插件框架所限制。
- 宿主增量极小:得益于全动态实现,真正合入宿主程序的代码量极小(15KB,160方法数左右)。
- 支持四大组件:包括 Activity、Service、BroadcastReceiver 和 ContentProvider。
- 支持 Fragment 和 DataBinding:无需特别支持,但已验证可正常工作。
- 跨进程使用插件Service:支持在不同进程中使用插件Service。
- 自定义Theme:支持自定义主题。
- So加载:支持加载本地库。
- 分段加载插件:支持多Apk分别加载或多Apk以此依赖加载。
- 一个Activity中加载多个Apk中的View:支持在一个Activity中加载多个Apk中的View。
3. 项目最近更新的功能
Shadow 项目最近更新的功能包括:
- 多插件支持的演示工程:增加了多插件支持的演示工程,方便开发者理解和使用。
- 自动化测试用例补充:补充了更多的自动化测试用例,提高了项目的稳定性和兼容性。
- 开源包含下载能力的manager实现:开源了包含下载能力的manager实现,方便开发者进行插件的下载和管理。
通过这些更新,Shadow 项目进一步提升了其在 Android 插件化领域的实用性和易用性,为开发者提供了更加完善的插件化解决方案。
Shadow 零反射全动态Android插件框架 项目地址: https://gitcode.com/gh_mirrors/shado/Shadow