1、技術(shù)背景
隨著智能手機(jī)硬件性能的逐步提升,移動(dòng)應(yīng)用也做的越來越復(fù)雜,android平臺上應(yīng)用的apk包體積也越來越大,然后同類產(chǎn)品開始比拼誰的體積小,實(shí)現(xiàn)方案呢,然后很容易想到"插件化",也就是說可以發(fā)布內(nèi)核很小的產(chǎn)品,隨著添加功能的需求而動(dòng)態(tài)下載功能模塊,促使插件化的另一個(gè)動(dòng)機(jī)是App應(yīng)用固有的問題,那就是很多組件需要注冊,更新功能的話不能像Web應(yīng)用那樣可在用戶無察覺的情況下通過升級服務(wù)器而方便升級,只能彈出個(gè)框讓用戶重新下載整個(gè)程序包,然后調(diào)取系統(tǒng)安裝流程。
被加載的apk稱之為插件,因?yàn)闄C(jī)制類似于生物學(xué)的"寄生",加載了插件的應(yīng)用也被稱為宿主。
往往不是所有的apk都可作為插件被加載,往往需要遵循一定的"開發(fā)規(guī)范",還需要插件項(xiàng)目引入某種api類庫,業(yè)界通常都是這么做的。