Android 插件化框架Small的使用

github地址:https://github.com/wequick/Small

使用文档:http://code.wequick.net/Small/cn/home

一.新建宿主工程(和普通工程一样)

1.集成环境,在根目录下的build.gradle脚本添加(注意:注意com.android.tools.build:gradle版本太高会报错)

  dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0'//注意版本太高会报错
        classpath 'net.wequick.tools.build:gradle-small:1.1.0-alpha2'

    }

apply plugin: 'net.wequick.small'

small {
    aarVersion = '1.1.0-alpha2'
}

点击 Android Studio 顶部菜单栏的同步按钮 as-sync ,系统将开始下载上述插件库。

再在底部面板 Terminal 中输入以下命令来验证Small环境:

gradlew small

提示如下表示成功

二、配置宿主

创建Application类,并初始化small

import android.app.Application;

import net.wequick.small.Small;

public class MySmallApplication extends Application {

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

        Small.preSetUp(this);
    }
}

再在 AndroidManifest.xml 中指定这个 Application。

<application
    android:name=".MySmallApplication"
    ...>
</application>

三、创建插件模块(截图来自官方文档)

四:编译插件

1.编译公共库插件 gradlew buildLib -q (-q是安静模式,可以让输出更好看,也可以不加)

2.Build bundles (打包所有组件)

gradlew buildBundle -q (-q是安静模式,可以让输出更好看,也可以不加)

 3.查看编译情况  gradlew small

编译成功,多一个.so文件

五、启动插件

{
  "version": "1.0.0",
  "bundles": [
    {
      "uri": "main",
      "pkg": "com.small.appmain"
    }
  ]
}

 

  • version,是 bundle.json 文件格式版本,目前始终为 1.0.0
  • bundles,插件数组
    • uri,插件唯一ID
    • pkg,插件包名

回到宿主的 app > java >com.small.mysmall> MainActivity,在 onStart 方法中我们通过上述配置的 uri 来启动 app.main 插件:

   @Override
    protected void onStart() {
        super.onStart();
        Small.setUp(this, new Small.OnCompleteListener() {
            @Override
            public void onComplete() {
                //传值(只支持基本数据类型)
                String uri=String.format("main?id=%s&title=%s",10,"hahaha");

                Small.openUri(uri, MainActivity.this);
            }
        });
    }

 六、运行宿主

七、总结

遇到的问题:

1.编译 app.main 插件时

解决:在build.gradle中android下加入

lintOptions {
    checkReleaseBuilds false
    abortOnError false
}

2.目前没有支持3.0以上版本

改为

    classpath 'com.android.tools.build:gradle:2.2.0'

 

项目demo地址:https://download.csdn.net/download/u010350891/10755798

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值