Tencent Shadow

2021-09-25  本文已影响0人  放羊娃华振

介绍

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

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

支持特性

编译与开发环境

环境准备

第一次clone Shadow的代码到本地后,建议先在命令行编译一次。

在命令行测试编译时可以执行这个任务:

./gradlew build

如果没有出错,再尝试用Android Studio打开工程。

然后就可以在IDE中选择sample-host模块直接运行了。

[图片上传失败...(image-420f0-1632546530633)]

Shadow的所有代码都位于projects目录下的3个目录,分别是:

其中sample应该是大家体验Shadow的最佳环境。 详见sample目录中的README介绍。

自己写的测试代码出错?

以我们多年的插件环境下业务开发经验,插件框架是不可能一步到位实现完美的。 因此,我们相信大部分业务在接入时都是需要一定的二次开发工作。 Shadow现有的代码满足的是我们自己的业务现在的需求。得益于全动态的设计, 插件框架和插件本身都是动态发布的,插件包里既有插件代码也有插件框架代码, 所以可以根据新版本插件的需要同时开发插件框架。

例如,ShadowActivity没有实现全所有Activity方法,你写的测试代码可能用到了, 就会出现Method Not Found错误,只需要在ShadowActivity中实现对应方法就可以了。 大部分方法的实现都只是需要简单的转调就能工作正常。

如果遇到不会实现的功能,可以提Issue。最好附上测试代码。

上一篇下一篇

猜你喜欢

热点阅读