Android开源框架源码鉴赏:VirtualAPK
生活随笔
收集整理的這篇文章主要介紹了
Android开源框架源码鉴赏:VirtualAPK
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一 VirtualAPK的初始化流程
- 二 VirtualAPK的的加載流程
- 三 VirtualAPK啟動組件的流程
- 3.1 Activity
- 3.2 Service
- 3.3 Broadcast Receiver
- 3.4 Content Provider
更多Android開源框架源碼分析文章請參見Android open framwork analysis。
從2012年開始,插件化技術得到了很大的發展,究其原因,主要是因為隨著業務的增長,主工程變得越來越難以維護,而且隨著公司業務的擴展,原來的主應用也逐漸分化了多個子應用,研發團隊也由一個變成多個,但是子應用仍然需要主應用的流量入口優勢,種種業務場景的需求,極大地促進了插件化技術的發展。
就目前而言,主流的插件化框架有以下幾種:
從上圖對比可以看出,有著不錯的表現的重點是360的DroidPlugin框架和滴滴的VirtualAPK框架,這兩家公司的業務類型不同,導致了這兩套框架的側重點也有所不同,具體說來:
- DroidPlugin:DroidPlugin側重于加載第三方獨立插件,例如微信,并且插件不能訪問宿主的代碼和資源。這也比較符合260應用市場的業務特點。
- VirtualAPK:VirtualAPK側重于加載業務模塊,業務模塊通常和宿主都有一定的耦合關系,例如需要訪問宿主提供的訂單、賬號等數據信息等,這也比較符合滴滴業務型的業務特點。
也就是說如果我們需要去加載一個內部業務模塊,并且這個業務模塊很難從主工程中完全解耦,那么我們會優先選擇VirtualAPK這種方案。
A powerful and lightweight plugin framework for Android
官方網站:https://github.com/didi/VirtualAPK
源碼版本:0.9.1
按照國際慣例,在分析VirtualAPK的源碼實現之前,先吹一波它的優點
總結
以上是生活随笔為你收集整理的Android开源框架源码鉴赏:VirtualAPK的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android处理崩溃的一些实践
- 下一篇: Android 7.0 源码分析项目一期