RePlugin外置安装教程

  • what's RePlugin

1.导入宿主插件

  • 在项目跟build.gradle文件加入如下代码
 classpath 'com.qihoo360.replugin:replugin-host-gradle:+'
  • 在appModule文件夹的build.gradle文件中加入如下代码
apply plugin: 'replugin-host-gradle'
    compile 'com.qihoo360.replugin:replugin-host-lib:2.1.3'

如果插件中用到了AppCompactTheme那么还要在当前build.gradle中加上

repluginHostConfig {
    useAppCompat = true
}
  • 修改application
public class MyApplication extends Application {

    @Override
    protected void attachBaseContext(Context base) {
        super.attachBaseContext(base);
        RePluginConfig config = new RePluginConfig();
        //是否检查插件的签名
        config.setVerifySign(BuildConfig.DEBUG);
        RePlugin.App.attachBaseContext(this, config);

    }

    @Override
    public void onCreate() {
        super.onCreate();
        RePlugin.App.onCreate();

    }

    @Override
    public void onLowMemory() {
        super.onLowMemory();
        /* Not need to be called if your application's minSdkVersion > = 14 */
        RePlugin.App.onLowMemory();

    }

    @Override
    public void onTrimMemory(int level) {
        super.onTrimMemory(level);
        /* Not need to be called if your application's minSdkVersion > = 14 */
        RePlugin.App.onTrimMemory(level);

    }

    @Override
    public void onConfigurationChanged(Configuration config) {
        super.onConfigurationChanged(config);
        /* Not need to be called if your application's minSdkVersion > = 14 */
        RePlugin.App.onConfigurationChanged(config);

    }
}

  • 添加权限(这一步千万不能省略,因为调用install后他会把sd卡上的apk迁移到 data/data/包名/app_p_a 文件夹下并更改后缀名为jar)



## 2.生成插件apk
* 新建一个项目 
* 在项目跟目录build.gradle文件中加入

classpath 'com.qihoo360.replugin:replugin-plugin-gradle:+'

* 在moudle的build.gradle文件中加入

apply plugin: 'replugin-plugin-gradle'

compile 'com.qihoo360.replugin:replugin-plugin-lib:2.1.3'

* 在Manifest中加入(不可缺少,否则无法打开插件)


android:name="com.qihoo360.plugin.name"
android:value="plugin1"/>

android:name="com.qihoo360.plugin.version.ver"
android:value="1"/>


---
完成了基本条件,然后打包生成插件apk放到自己所需要的sd卡的目录中就行了,接下来就是如何打开这个插件了

## 3.打开插件
* 在宿主中的activity中加入如下代码

/**
* 安装插件
*
* @param view
*/
public void install(View view) {
PluginInfo pluginInfo = RePlugin.install("/sdcard/plugin1.apk");
Log.d(TAG, pluginInfo + "");
}

/**
 * 卸载插件
 *
 * @param view
 */
public void unInstall(View view) {
    RePlugin.uninstall("/sdcard/plugin1.apk");
}

/**
 * 打开页面
 *
 * @param view
 */
public void openActivity(View view) {
    try {
        RePlugin.startActivity(this, RePlugin.createIntent("plugin1",
                "com.github.jokar.plugin1.MainActivity"));
    } catch (Exception e) {
        e.printStackTrace();
    }
}

你可能感兴趣的:(RePlugin外置安装教程)