android插件化small框架初探(一)
来源:互联网 发布:tomcat部署域名访问 编辑:程序博客网 时间:2024/06/06 04:29
一个项目包涵多个module,且互相独立,没有依赖关系,但是可以相互跳转,方便维护,多个module插在一个app宿主上,这是我理解的插件化。
包含公共库插件lib,业务插件module及宿主app(只做壳用没有业务逻辑)
由于插件化是彻底分离的,底层是通过path来找到彼此,因此需要规定好path 映射关系,动态加载。
这里学习的是small框架。
首先需要在project根目录的build.gradle中添加如下代码
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.2.3' classpath 'net.wequick.tools.build:gradle-small:1.1.0-beta4' }}allprojects { repositories { jcenter() }}task clean(type: Delete) { delete rootProject.buildDir}apply plugin: 'net.wequick.small'small { aarVersion = '1.1.0-alpha1'}
然后 创建跳转的第一个module 这里叫做app.main并在app的assets下的bundle.json指定映射关系
{ "version": "1.0.0", "bundles": [ { "uri": "main",//跳转时指定main即到pkg包的启动activity中 "pkg": "com.xiaov.mysmall.app.main" } ]}
第三步 配置签名文件根目录下新建sign–>release.jks
app的build.gradle下指定
signingConfigs { release { storeFile file('../sign/release.jks') storePassword "111111" keyAlias "small" keyPassword "111111" } } buildTypes { release { signingConfig signingConfigs.release } }
最后在代码中做简单配置
public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); Small.preSetUp(this); }}<application android:name="MyApplication" ... >
最后执行跳转 在app的MainActivity中
@Override protected void onStart() { super.onStart();// Small.setBaseUri("http://example.com/"); Small.setUp(this, new net.wequick.small.Small.OnCompleteListener() { @Override public void onComplete() { Small.openUri("main", MainActivity.this);//启动默认的Activity,参考wiki中的UI route启动其他Activity } }); }
运行app前需要执行如下两个命令
gradlew buildLib -qgradlew buildBundle -q
官方:https://github.com/wequick/Small
此简易demo地址:https://github.com/androidjiawei/MySmall/tree/master/Android/MySmall
0 0
- android插件化small框架初探(一)
- [技术研究]Android插件化技术学习(Small插件框架)
- Android自助餐之插件化(使用Small框架)
- Android自助餐之插件化(使用Small框架)
- Android自助餐之插件化(使用Small框架)
- Android插件化(使用Small框架)
- Android插件化(使用Small框架)
- Android插件化(使用Small框架)
- Android Plugin 插件化技术-Small插件框架
- Android Plugin 插件化技术-Small插件框架
- Android Plugin 插件化技术-Small插件框架
- Android Small插件化框架--Android应用类加载机制
- Android Small插件化框架源码分析[魅族Degao]
- android插件化框架 small对资源的支持
- Android Small插件化框架--类加载实现解析
- 插件化技术-Small插件框架
- android插件化 small rules
- Android Small插件化框架--启动插件Activity源码解析(上)
- iOS 面试题
- butterknife和lambda冲突,空指针
- Android动画效果translate、scale、alpha、rotate详解
- 《Android群英传》读书笔记1.Android体系与系统架构
- Java获取随机数的几种方法总结
- android插件化small框架初探(一)
- Javascript实现二次多项式仿射变化
- 1051. Pop Sequence (25)
- Hololens搭配vuforia做房间识别(1)
- SQL Server查询优化方法(查询速度慢的原因很多,常见如下几种)
- Java找工作之面试复习(1) 集合
- Leetcode 151. Reverse Words in a String
- IntelliJ IDEA安装mybatis插件
- xixi语录