File assetFolder = dependency.getAssetsFolder(); if (assetFolder.isDirectory()) { AssetSet assetSet = new AssetSet(dependency.getFolder().getName()); assetSet.addSource(assetFolder); assetSets.add(assetSet); AssetSet assetSet = new AssetSet(BuilderConstants.MAIN); assetSet.addSources(mainResDirs); if (!generatedResFolders.isEmpty()) { for (File generatedResFolder : generatedResFolders) { assetSet.addSource(generatedResFolder); assetSet = new AssetSet(mFlavors.get(n).getName()); assetSet.addSources(flavorResDirs); assetSets.add(assetSet); assetSet = new AssetSet(getFlavorName()); assetSet.addSources(variantResDirs); assetSets.add(assetSet); assetSet = new AssetSet(mBuildType.getName()); assetSet.addSources(typeResDirs); assetSets.add(assetSet); assetSet = new AssetSet(getFullName()); assetSet.addSources(variantResDirs); assetSets.add(assetSet);
AssetSet jniSet = new AssetSet(BuilderConstants.MAIN); jniSet.addSources(mainJniLibsDirs); jniSets.add(jniSet); jniSet = new AssetSet(mFlavors.get(n).getName()); jniSet.addSources(flavorJniDirs); jniSets.add(jniSet); jniSet = new AssetSet(getFlavorName()); jniSet.addSources(variantJniDirs); jniSets.add(jniSet); jniSet = new AssetSet(mBuildType.getName()); jniSet.addSources(typeJniDirs); jniSets.add(jniSet); jniSet = new AssetSet(getFullName()); jniSet.addSources(variantJniDirs); jniSets.add(jniSet);
@Override public void execute(@NonNull MergeSourceSetFolders mergeAssetsTask) { super.execute(mergeAssetsTask); final BaseVariantData<? extends BaseVariantOutputData> variantData = scope.getVariantData(); final GradleVariantConfiguration variantConfig = variantData.getVariantConfiguration(); variantData.mergeAssetsTask = mergeAssetsTask; final boolean includeDependencies = !variantConfig.getType() .equals(VariantType.LIBRARY); ConventionMappingHelper.map(mergeAssetsTask, "inputDirectorySets", () -> { ArrayList<File> generatedAssets = new ArrayList<>(); generatedAssets.add(scope.getShadersOutputDir()); if (variantData.copyApkTask != null) { generatedAssets.add(variantData.copyApkTask.getDestinationDir()); } List<AssetSet> assetSets = variantConfig.getAssetSets(generatedAssets, includeDependencies); AaptOptions options = scope.getGlobalScope().getExtension().getAaptOptions(); if (options != null && options.getIgnoreAssets() != null) { assetSets.forEach(as -> as.setIgnoredPatterns(options.getIgnoreAssets())); } return assetSets; }); mergeAssetsTask.setOutputDir(scope.getMergeAssetsOutputDir()); } }
if (!fileValidity.getDataSet().updateWith( fileValidity.getSourceFile(), changedFile,
@Override protected void doFullTaskAction() throws IOException { // this is full run, clean the previous output File destinationDir = getOutputDir(); FileUtils.cleanOutputDir(destinationDir); List<AssetSet> assetSets = getInputDirectorySets(); // create a new merger and populate it with the sets. AssetMerger merger = new AssetMerger(); try { for (AssetSet assetSet : assetSets) { // set needs to be loaded. assetSet.loadFromFiles(getILogger()); merger.addDataSet(assetSet); } // get the merged set and write it down. MergedAssetWriter writer = new MergedAssetWriter(destinationDir); merger.mergeData(writer, false /*doCleanUp*/); // No exception? Write the known state. merger.writeBlobTo(getIncrementalFolder(), writer, false); } catch (MergingException e) { getLogger().error("Could not merge source set folders: ", e); merger.cleanBlob(getIncrementalFolder()); throw new ResourceException(e.getMessage(), e); } }
AssetSet shaderSet = new AssetSet(BuilderConstants.MAIN); shaderSet.addSources(mainShaderDirs); shaderSets.add(shaderSet); shaderSet = new AssetSet(mFlavors.get(n).getName()); shaderSet.addSources(flavorJniDirs); shaderSets.add(shaderSet); shaderSet = new AssetSet(getFlavorName()); shaderSet.addSources(variantJniDirs); shaderSets.add(shaderSet); shaderSet = new AssetSet(mBuildType.getName()); shaderSet.addSources(typeJniDirs); shaderSets.add(shaderSet); shaderSet = new AssetSet(getFullName()); shaderSet.addSources(variantJniDirs); shaderSets.add(shaderSet);
File assetFolder = dependency.getAssetsFolder(); if (assetFolder.isDirectory()) { AssetSet assetSet = new AssetSet(dependency.getExtractedFolder().getName()); assetSet.addSource(assetFolder); assetSets.add(assetSet); AssetSet assetSet = new AssetSet(BuilderConstants.MAIN); assetSet.addSources(mainResDirs); if (!generatedAssetFolders.isEmpty()) { for (File generatedResFolder : generatedAssetFolders) { assetSet.addSource(generatedResFolder); assetSet = new AssetSet(mFlavors.get(n).getName()); assetSet.addSources(flavorResDirs); assetSets.add(assetSet); assetSet = new AssetSet(getFlavorName()); assetSet.addSources(variantResDirs); assetSets.add(assetSet); assetSet = new AssetSet(mBuildType.getName()); assetSet.addSources(typeResDirs); assetSets.add(assetSet); assetSet = new AssetSet(getFullName()); assetSet.addSources(variantResDirs); assetSets.add(assetSet);