RePlugin 2.2.X使用教程

来源:互联网 发布:网页关键词 的优化 编辑:程序博客网 时间:2024/06/05 19:53

前段时间有相当一部分博友反馈,按照上一篇关于RePlugin插件化集成的方式并不能成功集成插件化,当时没有怎么留意,后来经王玉鹏Roc提醒,才知道插件升级了,集成的方式有些变化。前段时间一直很忙,才没有及时更新博客,今日正好补上最新的RePlugin集成方案。
与RePlugin 2.1.X版本集成的集成方式有几点不同:
1、之前的集成需要在AndroidManifest.xml文件中配置插件相关信息:
RePlugin 2.1.X的配置方式:

        <meta-data            android:name="com.qihoo360.plugin.name"            android:value="androidhelper" />        <meta-data            android:name="com.qihoo360.plugin.version.ver"            android:value="100" />

RePlugin升级之后,这一步不需要配置;
2、在安装、检测、启动插件的时候传入的阐述发送了改变:
RePlugin 2.1.X版本的检查方式:

//检测插件是否安装PluginInfo info = MP.getPlugin("androidhelper", true);                    //未安装插件                    if (null == info) {                        //检测插件是否下载                        File file = new File("/sdcard/dht", "androidhelper.apk");                        if (!file.exists()) {                            //下载插件                            Toast.makeText(MainActivity.this, "插件不存在", Toast.LENGTH_SHORT).show();                        } else {                            //安装插件                            PluginInfo in = RePlugin.install("/sdcard/dht/androidhelper.apk");                            if (null == in) {                                Toast.makeText(MainActivity.this, "安装插件失败", Toast.LENGTH_SHORT).show();                            }                        }                        return;                    }                    //启动插件                    RePlugin.startActivity(MainActivity.this, RePlugin.createIntent("androidhelper", "com.morse.replugin.MainActivity"));

RePlugin 2.2.X的检测方式:

public static void startPlugin(Context context) {        //检测插件是否安装        //检测是否安装插件时,传入的是包名        PluginInfo info = MP.getPlugin("com.morse.plugin", true);        //未安装插件        if (null == info) {            //检测插件是否下载            File file = new File("/sdcard", "plugin.apk");            if (!file.exists()) {                //下载插件                Toast.makeText(context, "插件不存在", Toast.LENGTH_SHORT).show();            } else {                //安装插件                PluginInfo in = install("/sdcard/plugin.apk");                if (null == in) {                    Toast.makeText(context, "安装插件失败", Toast.LENGTH_SHORT).show();                }            }            return;        } else {            RePlugin.preload(info);        }        //启动插件        RePlugin.startActivity(context, RePlugin.createIntent("com.morse.plugin", "com.morse.plugin.MainActivity"));    }

主要的区别在于:MP.getPlugin(“com.morse.plugin”, true)方法的使用,前者传入的是插件的名字,后者传入的时候插件的包名;RePlugin.createIntent(“com.morse.plugin”, “com.morse.plugin.MainActivity”)启动是传入的参数不一样:前者的第一个参数是插件名,后者的第一个参数是插件包名。
RePlugin2.1.X版本与2.2.X版本集成时的区别就这么多,如果博友们还是不能成功集成,欢迎私信我,希望本文对各位博友能够带来点帮助。

原创粉丝点击