[Description]
revert part of solution in
55bc36d33c
On Android R, TV's power status is TRANSIENT_TO_STANDBY
by default, in this case, device information related actions
should be started as well, that's why we allow
SystemAudioAutoInitiationAction and NewDeviceAction to be started
When TV boot up, SystemAudioAutoInitiationAction
is not started if power statusof HdmiControlService is not ON
This happens if onNewAvrAdded is called before
SystemService.PHASE_BOOT_COMPLETED
Bug: 194429425
Test:
Build PASS
Boot with ARC device plugged PASS
Change-Id: I79cd1d4f5a180a052be49df186505e579f7d1339
Ensures that all queued actions on local devices are started after
boot. Previously, an unstarted SendKeyAction could stick around after
boot, blocking any future SendKeyAction from being created.
Unit tests omitted because of AOSP incompatibilities.
Bug: 193188675
Test: atest HdmiControlServiceTest#normalBoot_queuedActionsStartedAfterBoot
manual test: spam volume up on boot with IR volume control enabled
Change-Id: I0050ca927bdba939b0b0030a6aa2f6235b11ff5c
Merged-In: I0050ca927bdba939b0b0030a6aa2f6235b11ff5c
(cherry picked from commit 22dc89a89f)
We now produce annotation.zip files individually for each module, but
for the public SDK it's easier to distribute a single zip file with
merged contents. Add a tool for merging these (simple) files.
Bug: 187397779
Test: unittest in cl
Test: diff tests in follow-on CL merging all module annotations.zip
Change-Id: Ic5bb94425dccafab43340805f73fafacab53cb28
Tradefed will need the python unit test verbosity to be set as 2 to make
the test cases information could be parsing correctly.
Bug: 201273904
Test: atest api_versions_trimmer_unittests
Change-Id: I414eb9ec18dbe45e9d2360a5c1baa0bc0b315170
Both com.android.apex.cts.shim.v2_prebuilt and StagedInstallTestApexV2
provide the same artifact. Tests that are using StagedInstallTestApexV2
are passing, whereas tests using com.android.apex.cts.shim.v2_prebuilt
are failing.
Root cause has not been identified yet. Proactively swapping the targets
to get the test green.
Bug: 200737517
Test: atest StagedInstallInternalTest#testAdbStagedReadyWaitCanBeSkipped
Change-Id: Ibdd72ec062538838ad60b847ee1ff31a792520a3
Merged-In: Ibdd72ec062538838ad60b847ee1ff31a792520a3
Add one more parameter to the isValid() method to indicate if the message that needs to be validated is sent or received by the device.
Add a filter that ignores received messages which have source's logical address equal to device's logical address.
Revise isValid() calls and tests affected by the change.
Edit HdmiControlServiceTest#handleCecCommand_errorParameter_returnsAbortInvalidOperand() test. Since the logical address Constants.ADDR_PLAYBACK_1 is already used by mPlaybackDeviceSpy the message's source is set to Constants.ADDR_PLAYBACK_2; otherwise HdmiCecMessageValidator#isValid() fails with a different error code than expected.
Bug: 196943901
Bug: 198261021
Test: make && atest CtsHdmiCecHostTestCases
Change-Id: I274a9a2385d616784dfc891aabd8f335c32658da
Merged-In: I274a9a2385d616784dfc891aabd8f335c32658da
Tests that rely on this API does not attempt
to parse it, but rather treat this as an opaque
string and upload them.
Test: pass
Bug: 200729012
Change-Id: I025e2602ab506ad009ce48d6329a230f12f1060c
StateMachine stand-alone library will replace all specific filegroup
created for module.
It will be then moved into modules-utils
Bug: 198418216
Tag: #refactor
Test: Build
Change-Id: I9dacffe74be54f378d1034f0ec4ef8b3b16afb29
1. Handle the set member avaiabler intent, check the group is existing and create bond automatically.
2. Accept the paring request for the ongoing set member
Bug: 150670922
Bug: 178981521
Test: pair with one of the CSIP supported device,and get bonded with the
whole coordinated set
Change-Id: Ia95e1ba6dccde0a4e61a9eafdef746b1415704a4
Bug: 178981521
Bug: 150670922
Test: pair with two device which are a coordinated set, and make sure
the UI only show one device
Merged-In: I1a8d570da1af7fa4c8b3a99f8ce69d23b574e96c
Change-Id: I1a8d570da1af7fa4c8b3a99f8ce69d23b574e96c
When we use Bundle's copy constructor we perform a shallow copy of the
underlying map, so lazy values are the same across the original and the
clone. So, if we're accessing the same item backed by a lazy value in 2
different threads, each one accessing a different bundle (the original
and the clone), both would have to synchronize on a common lock.
Although Bundle is not thread-safe, we should keep the expectation that
the client only needs to properly synchronize access to one bundle, not
more. To achieve this, we synchronize on the original parcel held by
LazyValue in get(), this removes the need for the above.
Note that after we produce the lazy values and put them in the map, we
don't have a reference to mParcelledData anymore inside the Bundle, the
only objects holding a reference to that parcel are the lazy values.
Also fixed some stuff in LazyValue:
* Fixed condition inside LazyValue that used mObject == null as
signal for "not deserialized" state since mObject can be null, so
switched to mSource != null.
* Made mSource volatile and adjusted operations to always check it
before, ensuring visibility of itself and mObject via happens-before.
This works because after checking mSource, if that's null, mObject is
guaranteed to be visible and valid, if it's not null, we can use it
since we're in the serialized state and this works even if another
thread deserializes in between as long as we hold on to a reference of
mSource in a local because the parcel is still valid.
* Remove the recycling of mValueParcel, otherwise we'd need locking to
ensure whatever was using it was still using a valid object. Decided
to just remove recycling for now since the plan is to remove
mValueParcel entirely when we add comparison and hasFileDescriptor()
methods that operate on a range to Parcel.
Bug: 195622897
Test: atest -d android.os.cts.ParcelTest android.os.cts.BundleTest
android.os.BundleTest android.os.ParcelTest
Test: More tests coming
Change-Id: I501c91f505950338b23e7837e55f89b2f63ff93a
When intentional API breakages are made, the incompatibilities tracking
file must be updated. This makes the failing build rule output the
baseline/incompatibilities file that would have made the build rule
succeed. This file can then be used to update prebuilts/sdk.
Whilst here, also make metalava quiet so we don't need to capture
stdout.
Test: make breaking change, build compat rule, inspect output dir
Change-Id: Ia95b65548371329cd467fd3093db92b471e6986d
The mainDexClasses script is obsolete, pass the rule to d8 with
--main-dex-rules instead.
Test: mma
Change-Id: Ia88660550c3e57749b8ccb154e97c31aaf2fcf3a
SignalStrengthUpdateRequest
Support different SignalMeasurementType with same type of RAN
is valid user case. For example, client may be interested to
measure both RSRP and RSRQ for EUTRAN.
Throw IAE if the SignalThresholdInfo collection is empty. This
is behavior specified in the public interface.
Bug: 198318496
Test: atest SignalStrengthUpdateRequestTest
Change-Id: I87ea5e356189f61fc58dff80456aff35ea2a8e55
Bug: 178981521
Bug: 150670922
Test: Discover and pair with the CSIP supported device, and check the
pairing string in the dialog
Merged-In: I3e99c59e0cb974409291e1b4c28393106784e133
Change-Id: I3e99c59e0cb974409291e1b4c28393106784e133