Add the association ID parameter in VDM, and use that to generate the
label for the virtual display name. The association ID check is
currently commented out because the API for companion apps to get the
association ID from CDM is not submitted yet.
Bug: 194949534
Test: Manual
CTS-Coverage-Bug: 204606917
Change-Id: I4d1207fc57a59c8d5b00cc200d507685e7e7a702
Migrate the following unsafe parcel APIs in framework-minus-apex:
* Parcel.readSerializable()
* Parcel.readArrayList()
* Parcel.readList()
* Parcel.readParcelable()
* Parcel.readParcelableList()
* Parcel.readSparseArray()
This CL was generated by applying lint fixes that infer the expected
type from the caller code and provide that as the type parameter
(ag/16365240).
A few observations:
* In some classes we couldn't migrate because the class also belonged to
another build module whose min SDK wasn't current (as is the case for
framework-minus-apex), hence I suppressed the lint check
(since I'll eventually submit the lint check to the tree).
* In some cases, I needed to do the cast in
https://stackoverflow.com/a/1080525/5765705 to make the compiler happy
since there isn't another way of providing a class of type
Class<MyClassWithGenerics<T>>.
* In the readSerializable() case, the new API also requires the class
loader, that was inferred to by InferredClass.class.getClassLoader().
* Note that automatic formatting and import rely on running hooked up
to the IDE, which wasn't the case here.
Bug: 195622897
Test: TH passes
Change-Id: I11a27b9bdab7959ee86e90aa1e1cbebd7aaf883c
Adapt CDM Association flow for new associate() API, which supports
self-managed associations.
Add support for new device profiles: APP_STREAMING and
AUTOMOTIVE_PROJECTION.
Start CDM discovery service only after UI is visible.
Lift "one request at a time" limitation (remove
AssociationRequestsProcessor.mRequest field).
Bug: 194301022
Bug: 208307075
Test: atest CtsCompanionDevicesTestCases:AssociateTest
Test: atest CtsCompanionDevicesTestCases:AssociateSelfManagedTest
Test: atest CtsCompanionDevicesTestCases
Change-Id: I6cb796c375421f101e87ad436111996495eb74d9
Created two new APIs in CompanionDeviceManager:
notifyDeviceAppeared and notifyDeviceDisappeared for
companion apps report connectivity.
Create a new callback method for user to override when
device is connected and disconnected
Bug: 199435613
Test: atest CtsCompanionDevicesTestCases
Change-Id: I6884d085cf810fdd42466d620e888b07367c9b94
Add onBindCompanionDeviceService() method to CompanionDeviceService,
which is invoked from onBind(). This allows to track the state of
incoming Binder connection in CTS tests, which was not possible before,
since onBind() method in CompanionDeviceService is final.
Bug: 199435613
Test: atest CtsCompanionDevicesTestCases:SelfPresenceReportingTest
Test: atest CtsCompanionDevicesTestCases
Change-Id: I37cd3be15ed41b466ef9c6cead781299fd82356e
Make the AssociationInfo and DeviceId classes public.
Deprecate the existing public associate() method that take a callback
based on onDeviceFound(), and introduce a new one that takes an
AssociationRequestCallback.
Deprecate the existing public disassociate() method that takes a MAC
address, and introduce another one that takes an associationId.
Deprecate the existing public getAssociations() method that returns a
list of MAC addresses, and introduce a new public method
getMyAssociations() that retuns a list of AssociationInfo objects.
Introduce new system API to retrieve list of all associations for a
user: getAllAssociations().
Introduce new system APIs for monitoring changes to the existing
associations: OnAssociationsChangedListener interface, and
add(remove)OnAssociationsChangedListener() methods.
Bug: 194301022
Test: atest CompanionDeviceManagerTest
Test: atest BluetoothInstrumentationTests
Test: atest SettingsRoboTests:NotificationBackendTest
Change-Id: Ic0235db29b26ed1a427c71edb2eb0df76fa4dc4c
Create DEVICE_PROFILE_AUTOMOTIVE_PROJECTION profile and
corresponding REQUEST_COMPANION_PROFILE_AUTOMOTIVE_PROJECTION
permission with protection_level: "internal|role"
Also add a logic that to skip the prompt if the role is not held
by system.
Test: make
bug: 203459457
Change-Id: I2644f7ed079b0e272f0cc8f4d6e580de49c59064
Add a new method to send activity result in
CompanionDeviceDiscoveryService and make sure
CDMService to call it before addAssociation.
Bug: 203418937
Test: Test: CTS Verifier test: Companion Device Service Test, Companion Device
Test and cts test: atest CtsOsTestCases:android.os.cts.CompanionDeviceManagerTest
Change-Id: Ied7d705934418869287a8be6cd44abe3b806db00
Merged-In: Ied7d705934418869287a8be6cd44abe3b806db00
Add a new method to send activity result in
CompanionDeviceDiscoveryService and make sure
CDMService to call it before addAssociation.
Bug: 203418937
Test: atest CtsOsTestCases:android.os.cts.CompanionDeviceManagerTest
Change-Id: Ied7d705934418869287a8be6cd44abe3b806db00
First step in making the Association(Info) class a part of the public
API surface.
Bug: 194301022
Test: make
Change-Id: Ib1544ef7da471ae9fee1b9a9fabb01653454e277
Generate unique IDs for Association records. Whenever a new ID is update
and persist first available ID to the disk.
Bug: 197933995
Test: make, flash
Test: atest android.os.cts.CompanionDeviceManagerTest
Change-Id: I127d219d08e4b8f1e8e0e6b434b063512a502565
Introduce android.companion.DeviceId class.
Refactor Association class to store the list of DeviceId objects instead
of a single MAC address String.
Fix CDMService to work with the updated Association class.
Bug: 197933995
Test: make
Change-Id: I43ce12178d6ccdcfd9832bf2a78d00acae431f94
Introducing DEVICE_PROFILE_APP_STREAMING to CDM and a corresponding
signature|privileged permission -
REQUEST_COMPANION_PROFILE_APP_STREAMING.
Bug: 202245486
Test: make
Change-Id: I6116662ba2bb97d8e88a5df1cba3ff47a8b9c6c7
Replaced hidden API usage in Companion by public
methods.
Tag: #feature
Bug: 200202917
Test: atest CompanionTests
Change-Id: Ifc7cdcbf40e23d1c8870e4dcd44772dcae55120a
Since and T Associations objects will have the ID feilds. These IDs
must be unique, and will be assigned by the CdmService. To make this
possible all new Associations objects (records) should be created by the
CdmService. At the moment, however, CompanionDeviceDiscoveryService also
creates Associations objects.
Change ICompanionDeviceDiscoveryService interface, so that when it
discovers a device reports back to the CdmService only the mac address
of the device, instead of a fully constructed Association object.
CdmService will take the address and creates an Association itself.
Bug: 197933995
Test: make
Change-Id: I4af928a7bc1c690bc7c3c7c50ec896884e10e3bd
Do not use Settings.Secure.ENABLED_NOTIFICATION_LISTENERS in
CompanionDeviceManager.
Deprecate CompanionDeviceManager(Service).hasNotificationAccess()
methods.
Bug: 198562936
Test: make
Change-Id: I6924edee1b8d0b7409ce62349717017d1a52c610
Change Owner from Eugene to the people who are currently working
with CDM.
Better to change the owner file under sc-dev first since there's
no owner file in AOSP.
Source of truth: /core/java/android/companion/OWNERS
Fix: 191984480
Change-Id: I737246128ca25e5efe2bdf59361a83cd6dc54c6b
Used SHA256 from ADK to make the determination
Test: Manual
Bug: 165951651
Change-Id: I5ed42d1e67d5abaaaf24989b54dd8e95f04621e9
Merged-In: I5ed42d1e67d5abaaaf24989b54dd8e95f04621e9