1*344a7f5eSAndroid Build Coastguard Worker// Signature format: 2.0 2*344a7f5eSAndroid Build Coastguard Workerpackage android.system.virtualmachine { 3*344a7f5eSAndroid Build Coastguard Worker 4*344a7f5eSAndroid Build Coastguard Worker public class VirtualMachine implements java.lang.AutoCloseable { 5*344a7f5eSAndroid Build Coastguard Worker method @RequiresPermission(android.system.virtualmachine.VirtualMachine.USE_CUSTOM_VIRTUAL_MACHINE_PERMISSION) public void enableTestAttestation() throws android.system.virtualmachine.VirtualMachineException; 6*344a7f5eSAndroid Build Coastguard Worker method @NonNull @WorkerThread public java.io.OutputStream getConsoleInput() throws android.system.virtualmachine.VirtualMachineException; 7*344a7f5eSAndroid Build Coastguard Worker method @NonNull public java.io.File getRootDir(); 8*344a7f5eSAndroid Build Coastguard Worker } 9*344a7f5eSAndroid Build Coastguard Worker 10*344a7f5eSAndroid Build Coastguard Worker public final class VirtualMachineConfig { 11*344a7f5eSAndroid Build Coastguard Worker method @NonNull public java.util.List<java.lang.String> getExtraApks(); 12*344a7f5eSAndroid Build Coastguard Worker method @NonNull public String getOs(); 13*344a7f5eSAndroid Build Coastguard Worker method @Nullable public String getPayloadConfigPath(); 14*344a7f5eSAndroid Build Coastguard Worker method public boolean isVmConsoleInputSupported(); 15*344a7f5eSAndroid Build Coastguard Worker field public static final String MICRODROID = "microdroid"; 16*344a7f5eSAndroid Build Coastguard Worker } 17*344a7f5eSAndroid Build Coastguard Worker 18*344a7f5eSAndroid Build Coastguard Worker public static final class VirtualMachineConfig.Builder { 19*344a7f5eSAndroid Build Coastguard Worker method @NonNull public android.system.virtualmachine.VirtualMachineConfig.Builder addExtraApk(@NonNull String); 20*344a7f5eSAndroid Build Coastguard Worker method @NonNull @RequiresPermission(android.system.virtualmachine.VirtualMachine.USE_CUSTOM_VIRTUAL_MACHINE_PERMISSION) public android.system.virtualmachine.VirtualMachineConfig.Builder setOs(@NonNull String); 21*344a7f5eSAndroid Build Coastguard Worker method @NonNull @RequiresPermission(android.system.virtualmachine.VirtualMachine.USE_CUSTOM_VIRTUAL_MACHINE_PERMISSION) public android.system.virtualmachine.VirtualMachineConfig.Builder setPayloadConfigPath(@NonNull String); 22*344a7f5eSAndroid Build Coastguard Worker method @NonNull @RequiresPermission(android.system.virtualmachine.VirtualMachine.USE_CUSTOM_VIRTUAL_MACHINE_PERMISSION) public android.system.virtualmachine.VirtualMachineConfig.Builder setVendorDiskImage(@NonNull java.io.File); 23*344a7f5eSAndroid Build Coastguard Worker method @NonNull public android.system.virtualmachine.VirtualMachineConfig.Builder setVmConsoleInputSupported(boolean); 24*344a7f5eSAndroid Build Coastguard Worker } 25*344a7f5eSAndroid Build Coastguard Worker 26*344a7f5eSAndroid Build Coastguard Worker public class VirtualMachineManager { 27*344a7f5eSAndroid Build Coastguard Worker method @NonNull public java.util.List<java.lang.String> getSupportedOSList() throws android.system.virtualmachine.VirtualMachineException; 28*344a7f5eSAndroid Build Coastguard Worker method @RequiresPermission(android.system.virtualmachine.VirtualMachine.MANAGE_VIRTUAL_MACHINE_PERMISSION) public boolean isFeatureEnabled(String) throws android.system.virtualmachine.VirtualMachineException; 29*344a7f5eSAndroid Build Coastguard Worker method @RequiresPermission(android.system.virtualmachine.VirtualMachine.MANAGE_VIRTUAL_MACHINE_PERMISSION) public boolean isRemoteAttestationSupported() throws android.system.virtualmachine.VirtualMachineException; 30*344a7f5eSAndroid Build Coastguard Worker method @RequiresPermission(android.system.virtualmachine.VirtualMachine.MANAGE_VIRTUAL_MACHINE_PERMISSION) public boolean isUpdatableVmSupported() throws android.system.virtualmachine.VirtualMachineException; 31*344a7f5eSAndroid Build Coastguard Worker field public static final String FEATURE_DICE_CHANGES = "com.android.kvm.DICE_CHANGES"; 32*344a7f5eSAndroid Build Coastguard Worker field public static final String FEATURE_LLPVM_CHANGES = "com.android.kvm.LLPVM_CHANGES"; 33*344a7f5eSAndroid Build Coastguard Worker field public static final String FEATURE_MULTI_TENANT = "com.android.kvm.MULTI_TENANT"; 34*344a7f5eSAndroid Build Coastguard Worker field public static final String FEATURE_REMOTE_ATTESTATION = "com.android.kvm.REMOTE_ATTESTATION"; 35*344a7f5eSAndroid Build Coastguard Worker field public static final String FEATURE_VENDOR_MODULES = "com.android.kvm.VENDOR_MODULES"; 36*344a7f5eSAndroid Build Coastguard Worker } 37*344a7f5eSAndroid Build Coastguard Worker 38*344a7f5eSAndroid Build Coastguard Worker} 39*344a7f5eSAndroid Build Coastguard Worker 40