Support CDM-less virtual devices.
- New VDMInternal#createVirtualDevice, which creates a VD with
CDM association id = 0 and display name from the params. The
name is required in this case (it's optional otherwise)
- The VD is fully functional, it just doesn't have a persistent id.
- The VD is also visible via the public VDM APIs. This is by design,
because if any activity ever runs on such device its deviceId will
not be the default one and the app must be able to get to that
VirtualDevice and its capabilities.
- Never assume that VirtualDeviceImpl#mAssociationInfo is not null
Not testable in CTS and not really flaggable. A flag disabling the new functionality will effectively crash system server when off.
Fix: 341060398
Test: manual
Flag: EXEMPT behavioural change
Change-Id: I65eca165362b0ef819d55b743de8a7780646c26e
7 files changed