Skip to content
Snippets Groups Projects
  1. Jun 09, 2023
  2. Jun 05, 2023
  3. May 29, 2023
  4. May 25, 2023
  5. May 23, 2023
  6. May 22, 2023
  7. May 17, 2023
  8. May 12, 2023
    • Ugo Yu's avatar
      Refine AT command of BluetoothSinkAudioPolicy · 145b3827
      Ugo Yu authored
      - Change feature type from integer to string
      - Only process expected AT+ANDROID commands in HeadsetStateMachine
      - Do not intercept AT+ANDROID commands with unexpected format
      - Handle unexpected commnads as normal vendor commands
      - Refactor feature command to
          +ANDROID: (<feature1>),(<feature2>,arg1),(<feature3>,args...)
      - Add more unit tests
      
      Bug: 275668166
      Bug: 280117645
      Test: atest BluetoothInstrumentationTests
      Change-Id: Ib502d1c51b26db41102e83a6720de2eaabdc9c63
      145b3827
    • Stephanie Bak's avatar
      Change APM notification from phone to device · 503e6b30
      Stephanie Bak authored
      Bug: 281892779
      Test: manual
      Change-Id: I2b204e115faeeb67a54deb08ab7d8dd62dd6cd09
      503e6b30
    • Etienne Ruffieux's avatar
      Add direct Telecom check for call state in HFP service · ae963f1c
      Etienne Ruffieux authored
      Telecom is using BluetoothHeadset#connectAudio to start
      SCO, but HeadsetService checks if a call is ongoing (or
      ringing) before sending the command to the native stack.
      
      It can happen that BluetoothInCallService isn't yet
      connected to Telecom service when that connectAudio
      is called, resulting in SCO not started at that time
      but when BluetoothInCallService is connected instead, which
      can be an issue as we will return false at Telecom's
      connect audio request.
      
      Bug: 274081739
      Tag: #feature
      Test: manual
      Change-Id: I74b8f56912cbd03e68321db1c5389e1374bca9bd
      ae963f1c
    • Sal Savage's avatar
      Use proper device root node IDs in map · c2b1ede4
      Sal Savage authored
      The ID for a device level node is __ROOT__<device> but we were adding it
      to the node map as simply "__ROOT__".
      
      Tag: #stability
      Bug: 282017538
      Test: atest BluetoothInstrumentationTests
      Change-Id: Ie81b28e3f21fccb9ab21d0c15c5a2c64de740e2a
      c2b1ede4
    • Sal Savage's avatar
      Always notify on node content, even if something goes wrong · 2e39add5
      Sal Savage authored
      Problem: Some GetFolderItems requests can fail, timeout, or abort, and
      we don't always notify the MediaBrowsers of the fact we're as done as
      we're going to be with their request. This causes the UI in some clients
      to indefinitely assume our service is downloading contents because we've
      detached and never notified of contents.
      
      Solution: GetFolderItems is _meant_ to represent exactly one fetch
      cycle, so we can move the code more in line with that. We'll always
      set the node to cached on exist of the state, and notify clients of the
      final contents. In this way, clients will always get _something_,
      whether its an empty list or the contents we have so far.
      
      Tag: #stability
      Bug: 279516561
      Test: atest BluetoothInstrumentationTests
      
      Please enter the commit message for your changes. Lines starting
      
      Change-Id: I6793c61ca91c0ca04aea7b9fc168cf641dee05f3
      2e39add5
    • Michał Narajowski's avatar
      Add tests for ActiveDeviceManager LeAudio->A2dp · cdfa5d48
      Michał Narajowski authored
      When switching a set of earbuds from LeAudio to A2DP this is the same as
      disconnecting from LeAudio device and connecting to A2DP device so the
      new tests are verifying the behavior of the ADM when disconnecting one
      or both LeAudio devices.
      
      Bug: 278761210
      Test: atest BluetoothInstrumentationTests
      Tag: #feature
      Change-Id: Ie708737c760862af8d0b100134a53c917077b124
      cdfa5d48
    • Michał Narajowski's avatar
      TBS: Fix unauthorized access response · 36d2223e
      Michał Narajowski authored
      Previously the TBS access request resulted in no response from the stack
      which resulted in ATT Timeout. With this change we respond with
      insufficient authorization.
      
      Bug: 263372634
      Test: manual and atest BluetoothInstrumentationTests
      Tag: #feature
      Change-Id: I8e1a8e2ff6322099d8ccca44ddd47b7286703a16
      36d2223e
    • William Escande's avatar
      Add synchronization for JNI object · a7c7e825
      William Escande authored
      Cleanup can put the callback object to NULL but a subsequent event can
      still try to call JNI on it.
      Adding check on the jni object + adding mutex to avoid multi-thread
      issue
      
      Bug: 281808930
      Test: JNI is untested
      Change-Id: I45919927b3cf6d5b7ab72e30040bb16492491b25
      a7c7e825
  9. May 11, 2023
    • Eric Shih's avatar
      Fix not using previous var when setting audio policy & change log level · 01368db4
      Eric Shih authored
      Bug: 281970923
      Test: atest GoogleBluetoothInstrumentationTests
      (cherry picked from https://android-review.googlesource.com/q/commit:609db0f4fc21cdaccc8e0c70e6d377dcc92b292f)
      Merged-In: I20eb76aad6ecdcdf4cc47289735d72d5c1e2da1f
      Change-Id: I20eb76aad6ecdcdf4cc47289735d72d5c1e2da1f
      Bug: 263323082
      01368db4
    • Sal Savage's avatar
      Allow new Now Playing List fetches to happen by cancelling the old request · c292061b
      Sal Savage authored
      Problem: The Now Playing List is invalidated when the addressed player
      changes. This can happen on initial connection, when the Available Players
      change and a player ID is reused, or directly as a result of an Addressed
      Player Changed event. Typically, both events come in one after the other,
      causing one Now Playing list fetch, immediately followed by another. As
      it stands, the first request always finishes, and the future ones are
      ignored, despite the list getting cleared/uncached part-way through.
      This leads to missing data and/or incorrect lists, which can have
      downstream impact on playing items from the Now Playing List as well.
      
      Solution: Let another more recent fetch request for the Now Playing List
      invalidate the previous requsst and cause the download process to
      restart. These downloads are typically quick and the wasted cycles
      downloading sometimes-old-something-invalid data are small, or
      necessary.
      
      Tag: #stability
      Bug: 177004421
      Test: atest AvrcpControllerStateMachine.java
      Change-Id: Idcc0a21c966622bfd442ae3b2c7cf1d8f06e75d3
      c292061b
    • David Duarte's avatar
      Remove android.hardware.bluetooth.audio-V3-ndk from defaults · c1070e0b
      David Duarte authored
      Bug: 279502784
      Bug: 267212763
      
      Test: Presubmit
      Change-Id: Ibb11f95739fcd86d5ec7239c747449d5cf86724b
      c1070e0b
    • Eric Shih's avatar
      Fix not using previous var when setting audio policy & change log level · 609db0f4
      Eric Shih authored
      Bug: 281970923
      Test: atest GoogleBluetoothInstrumentationTests
      Change-Id: I20eb76aad6ecdcdf4cc47289735d72d5c1e2da1f
      609db0f4
    • Kyunglyul Hyun's avatar
      Correct return of BluteoothDevice#createBond · a85acd54
      Kyunglyul Hyun authored
      When two apps try to create bond to the same
      remote device, the second call would return false,
      even when it didn't fail.
      This is not consistent with the Javadoc, which states
      that the method should return true if bonding is began.
      
      This change makes the method return true when it's already bonding,
      which allows callers to expect a BOND_STATE_CHANGED intent
      to be broadcast when the bond is complete.
      
      Bug: 269056263
      Test: atest BluetoothInstrumentationTests
      Change-Id: Ic30bb010c09738eecfc8a0285accb4db0ddeeefc
      a85acd54
    • Hyundo Moon's avatar
      Stop using BT icon from private resource · 55fcd7b8
      Hyundo Moon authored
      Currently the BT icon is a private resource in frameworks/base,
      and it is being used from BT module via private access (@*android).
      As a result, the icon is not properly shown if the resource ID becomes
      different between when mainline module is built and when it is run.
      
      This CL copies BT icon into BT module and uses it.
      
      As the tint color in bt_share.xml is also private,
      this CL uses a blue color from official Bluetooth website.
      
      Bug: 279384742
      Test: Sharing via bluetooth shows the correct icon
      Change-Id: I9d2ac626f294dea17eecebfd70cd1e7a2ae01cd0
      55fcd7b8
    • Duo Ho's avatar
      Avatar: Add ASHA dual device test - test_music_start_dual_device · 214d84da
      Duo Ho authored
      Test: avatar run --mobly-std-log --include-filter 'ASHATest'
      Bug: 254077091
      Change-Id: Ibda0dbff53344ffb7e2c8158fb4ebc78193482ef
      214d84da
    • Stephanie Bak's avatar
      Replace APM enhancement device config flag with overlay · 91b6a874
      Stephanie Bak authored
      Bug: 280675681
      Test: manual
      Change-Id: I4b2ec50d79667e9c1c921edd0adb7118725498b1
      91b6a874
    • Jack He's avatar
      ASHA: Do not enable by default for TV/Wear/Auto · e6943273
      Jack He authored
      Bug: 281686068
      Test: atest CtsRootBluetoothTestCases:android.bluetooth.cts_root.BluetoothCddRootTest
      Change-Id: Ifaae28f27c602f5ba44871e2b2107e461934ba15
      e6943273
Loading