variant.addApkSet( ApkSet.newBuilder() .setModuleMetadata(appBundle.getModule(moduleName).getModuleMetadata()) .addAllApkDescription( splitsByModuleName.get(moduleName).stream()
public static ApkSet createConditionalApkSet( String moduleName, ModuleTargeting moduleTargeting, ApkDescription... apkDescriptions) { return ApkSet.newBuilder() .setModuleMetadata( ModuleMetadata.newBuilder() .setName(moduleName) .setTargeting(moduleTargeting) .setOnDemand(false)) .addAllApkDescription(Arrays.asList(apkDescriptions)) .build(); }
public static ApkSet createSplitApkSet( String moduleName, boolean onDemand, ImmutableList<String> moduleDependencies, ApkDescription... apkDescription) { return ApkSet.newBuilder() .setModuleMetadata( ModuleMetadata.newBuilder() .setName(moduleName) .setOnDemand(onDemand) .addAllDependencies(moduleDependencies)) .addAllApkDescription(Arrays.asList(apkDescription)) .build(); }
public static ApkSet createSystemApkSet(ApkTargeting apkTargeting, Path apkPath) { // Note: System APK is represented as a module named "base". return ApkSet.newBuilder() .setModuleMetadata(ModuleMetadata.newBuilder().setName("base")) .addApkDescription( ApkDescription.newBuilder() .setPath(apkPath.toString()) .setTargeting(apkTargeting) .setSystemApkMetadata( SystemApkMetadata.newBuilder() .addFusedModuleName("base") .setSystemApkType(SystemApkType.SYSTEM))) .build(); } }
public static Variant standaloneVariant( VariantTargeting variantTargeting, ApkTargeting apkTargeting, ZipPath apkPath) { // A standalone variant has only a single APK with module named "base". return createVariant( variantTargeting, ApkSet.newBuilder() .setModuleMetadata(ModuleMetadata.newBuilder().setName("base")) .addApkDescription( ApkDescription.newBuilder() .setTargeting(apkTargeting) .setPath(apkPath.toString()) // Contents of the standalone APK metadata is not important for these tests // as long as the field is set. .setStandaloneApkMetadata(StandaloneApkMetadata.getDefaultInstance())) .build()); }
public static ApkSet splitApkSet( String moduleName, boolean onDemand, ImmutableList<String> moduleDependencies, ApkDescription... apkDescriptions) { return ApkSet.newBuilder() .setModuleMetadata( ModuleMetadata.newBuilder() .setName(moduleName) .setOnDemand(onDemand) .addAllDependencies(moduleDependencies)) .addAllApkDescription(Arrays.asList(apkDescriptions)) .build(); }
public static ApkSet createStandaloneApkSet(ApkTargeting apkTargeting, Path apkPath) { // Note: Standalone APK is represented as a module named "base". return ApkSet.newBuilder() .setModuleMetadata(ModuleMetadata.newBuilder().setName("base")) .addApkDescription( ApkDescription.newBuilder() .setPath(apkPath.toString()) .setTargeting(apkTargeting) .setStandaloneApkMetadata( StandaloneApkMetadata.newBuilder().addFusedModuleName("base"))) .build(); }
/** Creates an instant apk set with the given module name, ApkTargeting, and path for the apk. */ public static ApkSet createInstantApkSet( String moduleName, ApkTargeting apkTargeting, Path apkPath) { return ApkSet.newBuilder() .setModuleMetadata(ModuleMetadata.newBuilder().setName(moduleName).setIsInstant(true)) .addApkDescription( ApkDescription.newBuilder() .setPath(apkPath.toString()) .setTargeting(apkTargeting) .setInstantApkMetadata(SplitApkMetadata.newBuilder().setIsMasterSplit(true))) .build(); }