由于项目做的越来越大,业务上就产生了要将app模块化的需求,所谓模块化就是将一个app分成不同功能的小模块(插件),当安装程序的时候并不需要将所有模块一次全部安装,用户可以在需要的时候视情况从服务器上更新添加小插件。 android上模块化一直都有人在摸索也出现了不少框架各有优特点,我学习apkplug这个插件化框架。这个框架的特点是 1)插件就是普通apk文件,开发插件跟普通app没有太大区别省去了学习固定api的功夫了。 2)插件apk不用在本地安装,网上比较经典的插件化框架都是通过android:sharedUserId=xxx的形式将插件与app进行关联,而apkplug不用安装在app进程中运行也算是它的一大特点 3)通过标准OSGI服务实现插件间通讯,我们开发应用时就可以定义自己的通讯接口了,而不必拘泥于固定的接口。一 环境搭建 从apkplug官网下载其最新的sdk解压出来的文件目录结构为如图1新建一个主应用工程我取名为myapkplughelloworld,将armeabi,Bundle1.4.0.jar两个文件放入工程的lib