use of com.android.build.gradle.tasks.ir.FastDeployRuntimeExtractorTask in project atlas by alibaba.
the class TransformReplacer method repalaceSomeInstantTransform.
public void repalaceSomeInstantTransform(BaseVariantOutput vod) {
variantContext.getProject().getTasks().withType(FastDeployRuntimeExtractorTask.class).forEach(fastDeployRuntimeExtractorTask -> fastDeployRuntimeExtractorTask.setEnabled(false));
List<TransformTask> baseTransforms = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunDependenciesApkBuilder.class);
if (baseTransforms != null && baseTransforms.size() > 0) {
for (TransformTask transformTask : baseTransforms) {
transformTask.setEnabled(false);
}
}
List<TransformTask> transforms = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunTransform.class);
if (transforms != null && transforms.size() > 0) {
for (TransformTask transformTask : transforms) {
TaobaoInstantRunTransform taobaoInstantRunTransform = new TaobaoInstantRunTransform(variantContext, variantContext.getAppVariantOutputContext(ApkDataUtils.get(vod)), WaitableExecutor.useGlobalSharedThreadPool(), variantContext.getScope());
ReflectUtils.updateField(transformTask, "transform", taobaoInstantRunTransform);
}
}
List<TransformTask> verifytransforms = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunVerifierTransform.class);
if (verifytransforms != null && verifytransforms.size() > 0) {
for (TransformTask transformTask : verifytransforms) {
transformTask.setEnabled(false);
}
}
List<TransformTask> transforms1 = TransformManager.findTransformTaskByTransformType(variantContext, ExtractJarsTransform.class);
if (transforms1 != null && transforms1.size() > 0) {
for (TransformTask transformTask : transforms1) {
TaobaoExtractJarsTransform taobaoExtractJarsTransform = new TaobaoExtractJarsTransform(variantContext, variantContext.getAppVariantOutputContext(ApkDataUtils.get(vod)), ImmutableSet.of(QualifiedContent.DefaultContentType.CLASSES), ImmutableSet.of(QualifiedContent.Scope.SUB_PROJECTS));
ReflectUtils.updateField(transformTask, "transform", taobaoExtractJarsTransform);
}
}
List<TransformTask> transforms2 = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunDex.class);
if (transforms2 != null && transforms2.size() > 0) {
for (TransformTask transformTask : transforms2) {
TaobaoInstantRunDex taobaoInstantRunDex = new TaobaoInstantRunDex(variantContext, variantContext.getScope(), variantContext.getScope().getGlobalScope().getAndroidBuilder().getDexByteCodeConverter(), (DexOptions) ReflectUtils.getField(transformTask.getTransform(), "dexOptions"), variantContext.getProject().getLogger(), (Integer) ReflectUtils.getField(transformTask.getTransform(), "minSdkForDx"), vod);
ReflectUtils.updateField(transformTask, "transform", taobaoInstantRunDex);
}
}
List<TransformTask> transformTaskList = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunSliceSplitApkBuilder.class);
if (transformTaskList != null && transformTaskList.size() > 0) {
for (TransformTask transformTask : transformTaskList) {
transformTask.setEnabled(false);
}
}
List<TransformTask> transformTaskList1 = TransformManager.findTransformTaskByTransformType(variantContext, InstantRunSlicer.class);
if (transformTaskList1 != null && transformTaskList1.size() > 0) {
for (TransformTask transformTask : transformTaskList1) {
transformTask.setEnabled(false);
// TaobaoInstantRunSlicer taobaoInstantRunSlicer = new TaobaoInstantRunSlicer(variantContext.getProject().getLogger(),variantContext.getScope());
// ReflectUtils.updateField(transformTask,"transform",taobaoInstantRunSlicer);
}
}
}
Aggregations