Releases: wequick/Small
Releases · wequick/Small
small:1.1.0-beta8
gradle-small:1.1.0-beta3, small:1.1.0-beta7
Features:
-
取消使用
SetUpProvider
, 改在宿主Application构造方法中调用Small.preSetUp
来支持ContentProvider (#253)public Application() { Small.preSetUp(this); }
-
Small.openUri
增加返回值,false表示打开失败 -
支持从宿主Assets中加载插件,使用方法:
-
在根
build.gradle
配置:small { buildToAssets = true }
-
在宿主
Application.onCreate
中添加:Small.setLoadFromAssets(BuildConfig.LOAD_FROM_ASSETS);
-
-
更新Small工程模板,一键生成上述配置
gradle-small:1.1.0-beta1, small:1.1.0-beta6
gradle-small:1.1.0-beta1
Features:
-
使用
gradlew small
可打印更多有用的编译信息以方便提issue -
支持Stub模块(宿主分身), 该模块会被打包到宿主, 同时其他模块可自由引用其中的类与资源
声明一个分身模块, 你可以:
- 模块名以
app+
开头 - 或者在 根
build.gradle
里声明bundles ('stub', ['any1', 'any2'])
- 模块名以
-
支持统一配置android环境, 以避免由于环境不同可能导致的资源不匹配问题(AppCompat):
small { android { compileSdkVersion = 23 // 编译sdk版本 buildToolsVersion = "23.0.3" // 编译工具版本 supportVersion = "23.4.0" // Support包版本 } }
Bugfixes:
- 兼容 Gradle 3.0, 使用
JANSI
完成控制台颜色输出 (#326) - 修正
AssetPlugin
中对android.jar
的引用路径
small:1.1.0-beta6
Features:
- 支持通过
TaskStackBuilder
来透明的创建通知 (与原有代码一致) - 导出
Small.wrapIntent
以支持自定义PendingIntent
的插件化封装 - 支持在宿主注册插件
ContentProvider
, 而在插件中实现该类 (#253)
gradle-small 1.0.0-beta1, small 1.1.0-beta1
gradle-small
1.0.0-beta1 (2016-07-21)
Features:
- 取消模块名
lib.xx
限制, 可在build.gradle
里通过bundles ('lib', [moduleA, moduleB])
来配置 - 取消模块包名
*.app.*
限制, 可在bundle.json
里通过type
字段来配置 (*.app.*
,*.appXX
形式的包名无需配置, 可被自动识别) - 增加
gradlew small
任务来显示Small环境变量
Performance:
- 避免在编译
lib.A:aR
时触发构建其他lib.*
模块的buildLib
任务 - 确保在插件没有资源时能够删除其
resources.arsc
文件来减少插件大小 - 当插件没有资源时, 跳过
资源分离
等操作, 使编译加速 - 避免分离字符串资源时可能产生的重复数据
- 避免不同的
variant
重复调用preBuild
任务
Bugfixes:
- 修正普通aar模块未生成
R.java
导致的类找不到问题 (#194) - 修正
lib.*
模块下的libs/*.jar
中的类找不到问题 (#177) - 修正
lib.*
模块下的assets
等目录被重复编译进app
模块的问题 (#199) - 修正误改资源压缩格式导致的
raw
下音频文件无法播放的问题 (#215, #172, #220, @tcking) - 修正解析字符串结构错误导致的资源无法找到问题 (a049596)
Other:
- 兼容JDK 1.7
small
1.1.0-beta1 (2016-07-21)
Features:
bundle.json
支持宿主路由配置 (pkg不配置)bundle.json
支持自定义插件type
- 支持将插件manifest的Launcher作为默认路由Activity
- 使用
Instant Run
方式修改宿主资源mAssets
来完成资源合并, 兼容Xposed (#190)
Bugfixes:
- [重要] 修正插件application在异常重启后无法触发
onCreate
的问题
Other:
Bundle
类导出versionCode
与versionName
的获取API
gradle-small:0.9.0, small:1.0.0
gradle-small
0.9.0
Features:
Performance:
- 动态添加classpath,避免javac task重复运行
Bugfixes:
- 修正当
app.A
依赖lib.B
且二者manifest都定义了<application>
时,processManifest
失败的问题 - 在manifest的
platformBuildVersionCode
里添加无资源标记
(#62, #139) - 修正
processDebugManifest
时<application>
标签未闭合的问题 (@tcking)
Other:
- 导入
Android Plugin
相关类,提高代码可读性
small
1.0.0
Performance:
- 并发加载插件以提高首次加载速度
- 使用CRC校验提高二次加载速度
- 释放中间变量以优化内存
Bugfixes: