腾讯零反射全动态 Android 插件框架 Shadow 正式开源

点击链接或图片 即可阅读

喜欢请 分享到朋友圈

项目介绍

Shadow 是一个腾讯自主研发的 Android 插件框架, 经过线上亿级用户量检验 。Shadow 不仅开源分享了插件技术的关键代码,还完整的分享了上线部署所需要的所有设计。

与市面上其他插件框架相比,Shadow 主要具有以下特点:

  • 复用独立安装 App 的源码:插件 App 的源码原本就是可以正常安装运行的。

  • 零反射无 Hack 实现插件技术:从理论上就已经确定无需对任何系统做兼容开发,更无任何隐藏 API 调用,和 Google 限制非公开 SDK 接口访问的策略完全不冲突。

  • 全动态插件框架:一次性实现完美的插件框架很难,但 Shadow 将这些实现全部动态化起来,使插件框架的代码成为了插件的一部分。插件的迭代不再受宿主打包了旧版本插件框架所限制。

  • 宿主增量极小:得益于全动态实现,真正合入宿主程序的代码量极小(15KB,160 方法数左右)。

  • Kotlin 实现:core.loader,core.transform 核心代码完全用 Kotlin 实现,代码简洁易维护。

GitHub 地址

https://github.com/Tencent/Shadow

:point_down:

头条君邀请您加入

开发者头条读者交流群

(识别下方群主二维码申请进群 ,请注明 “ 城市+技术方向

微信号 toutiaoio007