Resolve multiple BT device routing issues

This CL mainly resolves an issue found where routing needs to be updated
to inactive when we connect a second BT device during ringing and as a
result, in-band ringing is disabled. This was causing audio routing to
continually jump between both BT devices and the requests were failing.

The second is to ensure that we only send BT_AUDIO_CONNECTED if the
device that connected is SCO audio connected and to also ensure that we
refrain from disconnecting SCO where we are routing between the same BT
device types and the destination route is already connected to SCO. The
disconnect is done to clean up the original route but this will
inadvertently disconnect SCO for the destination route device if BT
stack has already reported that the device is connected to SCO.

Bug: 405071163
Flag: EXEMPT bugfix
Test: Manual test to connect second HFP device while incoming call is
ringing and answering call to verify that call audio is properly routed
to the active BT device.
Test: atest CallAudioRouteController
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:28296d0857f73fb02911dc2a9aad2510e8adf157)
Merged-In: If95b44ffcfee3076528a9336838ecaa61e66a694
Change-Id: If95b44ffcfee3076528a9336838ecaa61e66a694
5 files changed