DroidPlugin初体验及相关问题

因为项目需要使用到了DroidPlugin,就简单记一下使用和遇到的问题。

一、DroidPlugin使用

Github网址:https://github.com/DroidPluginTeam/DroidPlugin

首先从GitHub上下载Droidplugin的工程。工程主要包括两部分:第一部分是DroidPlugin的类库,第二部分是框架的测试代码部分,测试部分又有两个主Activity,可以在AndroidManifest.xml文件中切换。


DroidPlugin初体验及相关问题_第1张图片

官方文档的使用方法:

1、 将DroidPlugin作为第三方库导入工程。

2、 AndroidManifest.xml中使用插件的com.morgoo.droidplugin.PluginApplication

                           android:label="@string/app_name"

                           android:icon="@drawable/ic_launcher"

3、 如果你使用自定义的Application,那么你需要在自定义的Application class onCreateattachBaseContext方法中添加如下代码:

@Override
 public void onCreate() {
     super.onCreate();
     //这里必须在super.onCreate方法之后,顺序不能变
     PluginHelper.getInstance().applicationOnCreate(getBaseContext());
 }
   
 @Override
 protected void attachBaseContext(Context base) {
     PluginHelper.getInstance().applicationAttachBaseContext(base);
     super.attachBaseContext(base);
 }

4、 修改 Libraries\DroidPlugin\build.gradle  defaultConfig 配置中 authorityName 的值(建议改为自己的包名+标识,防止跟其它本插件使用者冲突)

然后调用DroidPlugin提供的安装函数就可以了。

 

 

二、遇到的问题和解决办法

 

1、 将DroidPlugin作为三方库导入的时候,由于三方库使用的SDK版本和Project相同,因此需要在Project的build.gradle文件中设置SDK版本。或者直接在DroidPlugin的build.gradle中设置。而我使用的方法是将自己的项目作为模块直接新建在Droid Plugin的工程中。

2、 使用自定义的Application加载第三方apk时,一直卡在正在加载中这个界面。然后使用他提供的PluginApplication时又加载成功。后面才发现是因为没有认真读官方文档,把那两个添加到了MainActivity中去了。后面添加到自己定义的Applicantion中就可以了。

3、 除了使用官方提供的那两种方法,也可以用自己自定义的Application去继承PluginApplication,这样也能实现目的。


你可能感兴趣的:(DroidPlugin初体验及相关问题)