commit | 89b245928a0441eb5c897a58897e2d1b312aa209 | [log] [tgz] |
---|---|---|
author | Inseob Kim <inseob@google.com> | Fri Feb 23 18:59:43 2024 +0900 |
committer | Inseob Kim <inseob@google.com> | Tue Mar 19 10:56:19 2024 +0900 |
tree | 8535297e2abeb74d2f0583414dce8adf2ef971d3 | |
parent | e7a90cc0d8ee5fde325a74949df6fcec01f0b547 [diff] |
Unify OS APIs into one API There are two APIs to specify a custom OS. * 'os' field in a payload config json inside an APK * 'osName' field in VirtualMachinePayloadConfig aidl parcelable But that results in confusing and tricky APIs. For example * VirtualMachineConfig.Builder.setOs() can be called only with VirtualMachineConfig.Builder.setPayloadBinaryName() because a payload config json already has its own OS field. It's confusing because users may misunderstand that customOS is only available to payload binaries. * We need one payload config file per one supported VM, even when they are exactly same VMs except for the OS. This makes duplicated config files (especially for tests). This change unifies those two OS APIs into one, under VirtualMachineAppConfig. * AIDL API users and VM APK developers: 'os' field in the json config will be deprecated and it will have no effect. * Java API users: setOs must be called if they want to use OSes other than "microdroid". Bug: 321130996 Test: atest MicrodroidHostTests MicrodroidTests AuthFsHostTest \ CustomPvmfwHostTestCases DebugPolicyHostTests \ ComposHostTestCases AVFHostTestCase PvmfwImgTest Change-Id: I41a526c7001b4b9ff23a52bf612a996e114f292c
Android Virtualization Framework (AVF) provides secure and private execution environments for executing code. AVF is ideal for security-oriented use cases that require stronger isolation assurances over those offered by Android’s app sandbox.
Visit our public doc site to learn more about what AVF is, what it is for, and how it is structured. This repository contains source code for userspace components of AVF.
If you want a quick start, see the getting started guideline and follow the steps there.
For in-depth explanations about individual topics and components, visit the following links.
AVF components:
AVF APIs:
How-Tos: