Hide Linux terminal if VM isn't supported

Bug: 385216798
Test: atest
Flag: Build.RELEASE_AVF_SUPPORT_CUSTOM_VM_WITH_PARAVIRTUALIZED_DEVICES
Change-Id: I06fe52cf877deb3cd9ebc61af1579931b97d7766
This commit is contained in:
Jaewan Kim
2024-12-20 10:55:49 +09:00
parent 51769c2ed4
commit 614074e5c7
4 changed files with 32 additions and 5 deletions

View File

@@ -16,10 +16,13 @@
package com.android.settings.development.linuxterminal;
import static android.system.virtualmachine.VirtualMachineManager.CAPABILITY_NON_PROTECTED_VM;
import android.content.Context;
import android.content.pm.PackageManager;
import android.os.Process;
import android.os.storage.StorageManager;
import android.system.virtualmachine.VirtualMachineManager;
import android.text.TextUtils;
import android.util.DataUnit;
@@ -58,9 +61,13 @@ public class LinuxTerminalPreferenceController extends DeveloperOptionsPreferenc
StorageManager storageManager =
Objects.requireNonNull(context.getSystemService(StorageManager.class));
VirtualMachineManager virtualMachineManager =
Objects.requireNonNull(context.getSystemService(VirtualMachineManager.class));
mIsDeviceCapable =
getTotalMemory() >= MEMORY_MIN_BYTES
&& storageManager.getPrimaryStorageSize() >= STORAGE_MIN_BYTES;
&& storageManager.getPrimaryStorageSize() >= STORAGE_MIN_BYTES
&& ((virtualMachineManager.getCapabilities() & CAPABILITY_NON_PROTECTED_VM)
!= 0);
}
// Avoid lazy initialization because this may be called before displayPreference().