0%

第1章:插件化昨天、今天与明天

插件化是什么

如果做一个游戏平台,不可能把所有的游戏都包含进去,因为这样体积太大,浪费流量,浪费用户存储空间。只有用户需要玩什么游戏的时候,再动态下载安装某个游戏,这就是插件化的思想。

为什么需要插件化

如果某个插件功能有问题,则只需要改好bug打包这个插件就ok,不需要发版,用户不需要去应用商店更新App,就能够修复好的版本。这样,交易不会丢失。

此外,对于和竞争对手抢占市场的情况下,需要不断迭代发布新版本,发版周期太长,用户体验不到新功能;太短会引起用户反感,如果有插件化技术,做完新功能就能让用户看到新功能,这样就非常具有竞争力了。

后续发展趋势

在插件化风行一段时间之后,Android热修复技术和 React Native 开始出现,与Android的插件化平分秋色,插件化技术不再是唯一选择。

插件化的用途

真是场景下,插件化 80% 的应用场景是为了修复线上bug,在这一点上,插件化与 Tinker、Robust 这类修复工具有相同的能力,甚至更出色。

其实,插件化更适合游戏领域,游戏经常上线新英雄,或者新的皮肤,这些都不用发版。

还有一个很好的场景: ABTest,当产品为两种风格的设计举棋不定的时候,那么把两种策略做成两个插件包,让 50% 的用户下载A策略,另外 50% 下载B策略,一周后看数据即可。

更好的替代品:React Native

React Native 这种映射思路(Android 和 ios 中的控件在RN中都能找到映射),能够跨越 Android 和 ios 的系统差别。使用RN和纯原生相比,性能差距不大,在两个平台都很流畅。对于中小型企业来说,还能节省一端人力。

在jsPatch 被禁止后,RN 其实是ios 上最合适的热修复方案了。

谢谢你的鼓励