插件化框架集成-360插件框架DroidPlug

来源:互联网 发布:sql server between 编辑:程序博客网 时间:2024/06/11 19:34

一:使用插件化集成框架的好处:

    1:打造轻量级APP,提高用户转化率

    2:打破Dex65536的限制,妈妈再也不用担心我的编程

    3:热修复,动态修复错误

二:既然插件化框架有这么多好处,那么为什么不适用呢,本文简单介绍一款插件化集成框架360的DroidPlug,下面简单介绍下集成步骤

  2.1:在Github上找到DroidPlug插件化框架(下载)


2.2:将项目下载到本地,并解压,本文主要用到Libraries下的DroidPlugin类库,也可以用AS打开,并运行


2.3:新建一个项目,并将DroidPlugin作为mode导入


2.4:在主工程的settings.gradle中添加DroidPlugin并同步


2.5:将DroidPlug作为主项目的类库引用


2.6:在主项目的build.gradle中定义全局变量


2.7:将DroiodPlug中的lib修改为libs,build.gradle中引用做同样修改


2.8:在DroidPlug的build.gradle中增加如下内容,其中“com.example.plugin”换成主项目的包名


2.9:依次打开DroidPlug\com\morgoo\droidplugin\pm\PluginManager,将STUB_AUTHORITY_NAME,修改为BuildConfig.AUTHORITY_NAME


2.10:在主界面中添加三个按钮,分别对应安装插件,运行插件,卸载插件


2.11:自定义MyApplication,并在onCreate和attachBaseContent中加入如下代码,并在AndroidMainfest中引入


2.12:因为要读取本地app文件,对6.0以上版本动态申请权限


2.13:抽取PluginUtils工具类,用于操作安装,运行,卸载相应操作


2.14:新建跳转测试app,用于放到手机目录供手机加载用


2.15:将打包好的app,放到手机Download目录下,并取名2.apk


2.16:filePath设置为2.apk的绝对路径,packageName设置为2.apk的包名


2.17:将项目运行到手机上


2.18:点击加载空间,等待2s左右,显示安装完成


2.19:点击启动控件,显示插件内容


2.20:点击卸载插件,显示删除完成


参考源码:源码1,源码2