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)
```
  <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
  <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

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中加入(不可缺少,否则无法打开插件)
  <!--插件名称-->
        <meta-data
            android:name="com.qihoo360.plugin.name"
            android:value="plugin1"/>
        <!--插件版本-->
        <meta-data
            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();
        }
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值