四川汽车网,欢迎您!

帮助中心 广告联系

网站关键词: 四川汽车网

如果没有插件化技术,美团、淘宝这些app会有多大?

来源:时间:2020-03-30 16:41:32 阅读:-

宿主,如果看过异形的话会觉得有点瘆人,但是在移动开发领域,有一个“宿主”是我们经常会提及的,那就是支持插件的app。

随着Android的发展,国内一线企业的项目模块越来越多,用户体验要求也越来越高,想实现小步快跑、快速迭代的目的越来越难,还有65535,应用之间的互相调用等等问题,从而催生了插件化技术的产生。

2012年插件化概念被提出,到2016年的时候,插件化技术百家争鸣,被一线大厂广泛使用。

插件化技术几乎引领了Android技术的进步!

近些年,一线互联网大厂几乎对移动互联网形成了垄断,app的功能越来越多,比如下面这些app(美团、支付宝等):


每个app都集成了许多功能入口,美团上有“美食”、“电影”、“外卖”、“打车”等,每个入口其实都是一个app,只不过被集成到这些入口里了。如果没有插件化技术,美团、淘宝这些app会有多大?几个G都有可能!

这些大型app是如何把第三方app作为插件集成到自己的app里的?
随便一个app就能随意调用其他app吗?

当然不能!

插件化技术最初源于免安装运行apk的想法,这个免安装的apk可以理解为插件,而支持插件的app 我们一般叫宿主。支持插件化的app可以在运行时加载和运行插件,这样便可以将app中一些不常用的功能模块做成插件,一方面减小了安装包的大小,另一方面可以实现app功能的动态扩展。想要实现插件化,主要是解决下面三个问题:

1、插件中代码的加载和与主工程的互相调用

2、插件中资源的加载和与主工程的互相访问

3、四大组件生命周期的管理

插件化技术涉及得非常广泛,其中最核心的就是Android的类加载机制和反射机制。


插件化demo(作者:刘镓旗)


插件化技术


虽然现在很多公司开源了插件化框架,但还有非常多的开发者对插件化一知半解。所以我特意网上送了很多资料,在腾讯课堂看到有Android资深专家的《插件化技术》系列直播课,让我快速对插件化有了深入的理解。

如何加载插件的类?如何启动另一个插件的Activity?如何加载插件的资源?

《深入理解360插件化技术内核》
内容介绍;


大家感兴趣的可自行上腾讯课堂搜,这节课程只要99元。(不想花钱的,可以在我这薅羊毛。)

不吹不黑,思路很棒,能把高深的技术简单化讲清楚确实很不错了。并且视频与源码我都有下载保存了。

我保存的视频可以免费分享给你(关注后私信发送我关键词【插件化】,免费领取)

《深入理解360插件化技术内核》系列,一节视频两个小时左右,一共是三节,我大概梳理了一下技术内容为以下;

第一节;什么是插件化,如何加载插件的类?

1.什么是插件化
2.什么是双亲委托机制3.如何实现插件类的加载

第二节;如何启动另一个插件的Activity?

1.Hook是什么?
2.Activity的启动流程源码分析3.启动未注册Activity的思路分析4.撸码实现插件的Activity的启动

第三节;如何加载插件的资源?

1.Resources和AssetManager的关系

2.资源加载流程的源码分析

3.撸码实现插件的资源加载

4.常见面试题的讲解



最后,做个小调查,你们公司有使用插件化吗?欢迎留言