Qigsaw
2021-04-26 19:23:21 5 举报
Qigsaw
作者其他创作
大纲/内容
dynamic_feature:transformClassesWithSplitResourcesLoaderFor${variantName}
app:compile${variantName}JavaWithJavac
dynamic_feature:assemble${variantName}
生成并应用Qigsaw相关混淆规则
app:transformClassesWithSplitResourcesLoaderFor${variantName}
创建com.iqiyi.android.qigsaw.core.splitlib.splitName.SplitLibraryLoader,提供给app模块加载动态模块中的so
app:qigsawProcess${variantName}Manifest
将split apk内的同ABI的so单独打包,生成不包含so的apk和各ABI单独的apk
finalizedBy
dynamic_feature:transformClassesWithSplitSplitLibraryLoaderFor${variantName}
使用ASM在所有Activity插入加载动态模块Resources的代码
dependOn
把动态模块的AndroidManifest复制到app模块/build/intermediates/qigsaw目录下
app:process${variantName}Manifest
dynamic_feature:process${variantName}Manifest
app:qigsawProguardConfig${variantName}
创建com.iqiyi.android.qigsaw.core.extension.ComponentInfo,用于记录动态模块中的四大组件
dynamic_feature:processSplitApk${variantName}
生成Qigsaw相关常量,类似于常见的BuildConfig
app:qigsawAssemble${variantName}
app:generate${variantName}BuildConfig
dynamic_feature:copySplitManifest${variantName}
把从动态模块中复制过来的Manifest和app模块的Manifest进行合并、修改。
根据前面从Manifest和各split apk获得的信息,生成qigsaw.json文件(最终复制到apk包中的assets/qigsaw目录下),根据配置决定是否上传split apk
app:transformClassesWithSplitProcessSplitComponentFor${variantName}
app:generate${variantName}QigsawConfig
app:minify${variantName}WithR8
app:assemble${variantName}
dynamic_feature:compile${variantName}JavaWithJavac
0 条评论
下一页
为你推荐
查看更多
抱歉,暂无相关内容