public AndroidTask<MergeResources> basicCreateMergeResourcesTask(
@NonNull TaskFactory tasks,
@NonNull VariantScope scope,
@NonNull String taskNamePrefix,
@Nullable File outputLocation,
final boolean includeDependencies,
final boolean processResources) {
AndroidTask<MergeResources> mergeResourcesTask = androidTasks.create(tasks,
new MergeResources.ConfigAction(
scope,
taskNamePrefix,
outputLocation,
includeDependencies,
processResources));
mergeResourcesTask.dependsOn(
tasks,
scope.getPrepareDependenciesTask(),
scope.getResourceGenTask());
scope.setMergeResourcesTask(mergeResourcesTask);
scope.setResourceOutputDir(
Objects.firstNonNull(outputLocation, scope.getDefaultMergeResourcesOutputDir()));
scope.setMergeResourceOutputDir(outputLocation);
return scope.getMergeResourcesTask();
}