主页 > 新闻资讯 > 安卓全面插件化时代

安卓全面插件化时代

6月30日,360手机卫士插件化RePlugin正式开源,该款插件化方案可以帮助主程序在“确保极其稳定”的前提下,做到“无需升级主程序”就能支持新增组件、插件。其插件支持几乎所有在“单品”开发时的特性,包括静态Receiver、Task-Affinity、自定义Theme、进程坑位、AppCompat等。此外,RePlugin易于接入和管理,支持插件安装、升级、卸载、版本管理、内置插件管控等,对开发者而言非常容易运用,对用户而言也是“稳定和灵活”兼得。

  RePlugin负责人张炅轩表示,早在2014-2016年,360的插件化框架就逐步实现了“全面插件化”,如今更是具有出色的稳定性和灵活性,可适用于各种类型的应用上,并完美的运行在几乎任何安卓设备上。

  图1:360手机卫士RePlugin各项指标全面领先行业

  事实上,插件化给用户带来的方便体现在很多地方。

  首先,利用插件化方案,可以让手机应用变得“小而精”。只有当用户需要使用某个特定功能时,才可以下载并开启,且可以随时卸载插件。这不仅可以减小APK大小、节省流量,还可明显的减少内存、内部存储占用,将更多空间让给珍贵的相片、文档等资料。

  其次,用户可以随时体验软件新版本,不用因为一个小更新,就去下载一个完整的应用。此外,对于应用发布方也有莫大的好处。开发人员可以灵活发布应用版本,无需等市场上线,让用户手动升级。

  虽然安卓应用插件化的优势众所周知,但调查显示,使用插件化方案的安卓开发者却微乎其微,插件化在市面上并没有广泛流行起来。

  这是因为,几乎大部分的插件化方案在灵活性和稳定性上不能兼得,要么以“支持多特性”来牺牲“稳定性”,要么以“简单的实现插件化”而失去了“灵活性”;此外,目前的插件化框架仅在功能丰富的大型项目中,才被考虑使用,且多用于边缘功能,这也使得插件化的应用范围非常狭窄。

  图2:目前360手机卫士RePlugin插件占应用比达到83%

  基于以上原因,360手机卫士团队着手开发RePlugin插件化方案。自2013年推出卫士插件化框架之后,在2014年又在360手机卫士项目中,启用了最早的卫士完整占坑方案,并在2016年实现了“核心功能皆为插件”的目标。在整个过程中,卫士团队很好解决了“稳定”和“灵活”的平衡难题,破解了“只有功能丰富的项目才用”的“魔咒”。

  在稳定性方面,RePlugin的Hook点只有一处:ClassLoader,这使得框架崩溃率仅为万分之一。而在灵活性方面,由于RePlugin采用了全新、独创的“分层坑位方案”,加上一些其它独创新特性,如多进程坑位、Task-Affinity坑位等,从而真正实现了插件组件任意增改、新插件直接用、无须主程序发版、自有设置进程等特性,而独创的“动态编译方案”,能极大的提高插件开发者的研发效率,真正做到“只需几行代码,就能‘秒变’插件”的神奇效果。

  截止目前,RePlugin的插件数已达103个,核心基础插件57个,而插件占应用比更是达到了惊人的83%,而且年发版次数高达596次,平均每个工作日发版2-3次。目前360公司几乎所有的亿级用户量的APP,以及多款主流第三方APP,都采用了卫士RePlugin插件化方案。

  作为国内市场占有率最大、累计拥有10亿用户的手机端安全防护软件,360手机卫士近年来不断在提升用户体验方面发力,在夯实清理加速、骚扰拦截、软件管理、手机杀毒这些核心功能之外,在插件化开源等领域一直在深入探索,最终推出了兼顾稳定和灵活、更加成熟可靠的RePlugin方案。本次宣布RePlugin插件化开源,对安卓开发无疑具有非常深远的意义,对于广大APP 开发者无疑是一个福音。分析人士认为,这将在安卓界掀起一场“全面插件化”的趋势,让众多应用从RePlugin的开源中受益。

  GitHub地址:https://github.com/Qihoo360/RePlugin。欢迎您为RePlugin项目加Star、发送Pull Request,提Issue。